Ŀ¼
首先,严格按照操作系统理论来说,多线程并没有实现真正的同时进行。而是CPU将工作时间分成很多很短的时间片(Time slicing),每个时刻只能执行一个线程。
主要有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口。两种方式,除了创建线程实例的方式有差异外,启动线程都是调用start方法。
1.1、Runnable
Runnable接口中只有一个void run()方法,因此,实现Runnable接口需要实现run()方法。而启动多线程是通过将接口的实现类传入Thread进行实例化,然后调用start()方法。 public class HelloRunnable implements Runnable { public void run() { System.out.println("Hello from a thread!"); } public static void main(String args[]) { (new Thread(new HelloRunnable())).start(); } }
当然也可以通过匿名内部类实现临时的线程: new Thread(new Runnable() { public void run() { System.out.println("Hello from a thread!"); } }).start();
Hint:由于类的继承是单一的,只能有一个父类,因此在类已经继承一个父类时,可以通过实现Runnable接口来