1. 实现Runnable接口的run方法
public class ThreadTest2 {
public static class RunableTask implements Runnable {
@Override
public void run() {
System.out.println("线程 done 2");
}
}
public static void main(String[] args) {
RunableTask task = new RunableTask();
new Thread(task).start();
}
}
优点:Runable避免了java中子类不能再继承其他类的限制,RunableTask可以继承其他类
2. 继承Thread类并重写run方法
public class ThreadTest {
//继承Thread类并重写run方法
public static class MyThread extends Thread {
@Override
public void run() {
System.out.println("线程 done");
}
}
public static void main(String[] args) {
//创建线程
MyThread thread = new MyThread();
//启动线程
thread.start();
}
}
优点:方便传参,可以直接在子类里添加成员变量,通过set方法设置参数或通过构造函数传递