实现子线程的两种方式:
1.继承Thread类,重写run方法。
2.实现Runnable接口,重写run方法。 优点:因为Runnable是接口,所以可以实现"多继承";将run方法中的具体线程业务逻辑和Thread线程的开启控制解耦。
Demo.java:
package cn.xxx.demo; public class Demo { public static void main(String[] args) { SubRunnable sr = new SubRunnable(); Thread t = new Thread(sr); // 通过Runnable接口实现类的对象,创建子线程。 t.start(); // 开启子线程 } }SubRunnable(子线程业务类实现Runnable接口,重写run方法):
package cn.xxx.demo; /* * 实现线程的另一个方式,接口实现 * 实现接口Runnable,重写run方法 */ public class SubRunnable implements Runnable{ // 实现Runnable接口 因为是接口所以可以实现"多继承" public void run(){ // 重写run方法。 System.out.println("run..."); // 子线程的业务逻辑。 } }