1. 从JDK1.5开始,Java提供了3种方式来创建,启动多线程: Ø 继承Thread类来创建线程类,重写run()方法作为线程执行体. Ø 实现Runnable接口来创建线程类,重写run()方法作为线程执行体. Ø 实现Callable接口来创建线程类,重写run()方法作为线程执行体. 其中第一种方式效果最差,它有2点坏处: l 线程类继承了Thread类,无法在继承其他父类. l 因为每条线程都是一个Thread子类的实例,因此多个线程之间共享数据比较麻烦. 对于第二三种方式,它们的…