线程--匿名内部类实现多线程的2种方式
Posted pecool
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程--匿名内部类实现多线程的2种方式相关的知识,希望对你有一定的参考价值。
众所周知,Thread是继承了Runnable接口并重写run方法实现了线程。那么如果在匿名内部类中如何使用线程,并开启线程呢?
public class Test { public static void main(String[] args) { //Thread实现的匿名内部类 new Thread(){ @Override public void run() { System.out.println("aaa"); } }.start(); //Runnable实习匿名内部类 Runnable runnable = new Runnable(){ @Override public void run() { System.out.println("bbb"); } }; new Thread(runnable).start(); } }
Thread实现代码分析:
new Thread类,重写run方法,相当于得到Thread子类对象,并重写Thread中的run方法,进而.start开启线程。
Runnable实现代码分析:
new Runnable接口,重写run方法,相当于得到Runnable子类,run 方法相当于子类重写Runnable接口中的run方法,返回一个Runnable引用。实则为父类引用指向子类对象。
而开启时,需要使用Thread类中Thread(Runnable target)
构造方法,得到Thread对象后,再.start开启线程。
以上是关于线程--匿名内部类实现多线程的2种方式的主要内容,如果未能解决你的问题,请参考以下文章
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_14_匿名内部类方式实现线程的创建