- 线程创建的方法一、
package com.geminno.day14.createthread1;
public class MyThread extends Thread {//继承Thread类
private int ticket = 10;
public MyThread(String s) {
this.setName(s);
}
@Override //重写Thread类中的方法,也是线程的主方法;
public void run() {
for (int i = 10; i > 0; i--) {
if (this.ticket > 0) {
System.out.println(Thread.currentThread().getName() + " 卖票:ticket" + this.ticket--);
}
}
}
}
继承Thread类;
- 线程生成方法二、
package com.geminno.day14.createthread2;
public class MyThread2 implements Runnable{
//实现Runnable接口,
@Override
public void run() {//重写Run方法
for (int i = 1; i < 27; i++) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("当前数字是:"+i);
}
}
}
package com.geminno.day14.createthread2;
public class TestThread2 {
public static void main(String[] args) {
MyThread2 my2 = new MyThread2();//创建对象
Thread th = new Thread(my2);//将对象交由线程代理,即静态代理模式
th.start();//启动线程
for (int i = 65; i < 91; i++) {
try {
Thread.sleep(100);//主线程沉睡0.1秒
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println((char)i);
}
}
}
实现Runnable接口;
还有一种实现Callable接口的方法不常用,我们在这里就不多赘述了,想学的小伙伴可以自己网上找找教程;