- 使用匿名内部类创建线程的原理和普通类创建线程原理完全一样
- 区别在于利用匿名内部类创建线程的写法更加的简洁
写法:
package Test21_Demo.Demo11;/*
@create 2020--12--14--16:08
*/
public class AnonysThreadDemo {
public static void main(String[] args) {
//方式一:使用匿名内部类创建线程的子类对象
new Thread(){
@Override
public void run() {
System.out.println("匿名内部类1");
}
}.start();
System.out.println("-------------------------");
//使用匿名内部类创建线程的匿名子类对象,并且启动线程
new Thread(){
@Override
public void run() {
System.out.println("匿名内部类2");
}
}.start();
//方式二:组合写法 - 精简写法
new Thread(new Runnable(){
@Override
public void run() {
System.out.println("方式二1");
}
}).start();
//方式二:使用匿名内部类的方式,创建执行目标类的对象
Runnable r = new Runnable() {
@Override
public void run() {
System.out.println("方式二2");
}
};
//传入到构造函数
Thread t2 = new Thread(r);
t2.start();
//组合写法
Thread t3 = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("方式二3");
}
});
t3.start();
}
}