Java多线程系列-实现多线程的最基本两种方式
2017-10-25 17:13
489 查看
Java实现多线程的一种方式是实现Runnable接口,另一种则是继承Thread类。我们举例来说明二者的使用。
方法1:
?
方法2:
?
运行一下上述的程序:
?
从运行结果上来看,线程的执行是乱序的。其原因在于,调用线程的start()方法只是使线程进入“就绪状态/可执行状态”(Runnable),而何时进入“执行状态”(Running),要看操作系统的调度。
说到两种方法的异同,Runnable接口比Thread更为常用,其主要优势在于:一个类只可以继承一个父类,如果使用了方法二,则占用了唯一的一个继承资格,不可以再继承其他类,而一个类却可以实现多个接口。其二,使用方法1,传入线程构造方法的Runnable接口实现类相同的线程,可以共享Runnable接口实现类的实例域变量资源。从JDK文档开来,Thread也是Runnable接口的一个实现。
方法1:
?
方法2:
?
运行一下上述的程序:
?
从运行结果上来看,线程的执行是乱序的。其原因在于,调用线程的start()方法只是使线程进入“就绪状态/可执行状态”(Runnable),而何时进入“执行状态”(Running),要看操作系统的调度。
说到两种方法的异同,Runnable接口比Thread更为常用,其主要优势在于:一个类只可以继承一个父类,如果使用了方法二,则占用了唯一的一个继承资格,不可以再继承其他类,而一个类却可以实现多个接口。其二,使用方法1,传入线程构造方法的Runnable接口实现类相同的线程,可以共享Runnable接口实现类的实例域变量资源。从JDK文档开来,Thread也是Runnable接口的一个实现。
相关文章推荐
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式(r)
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--“基础篇”02之 常用的实现多线程的两种方式
- Java多线程系列--【基础篇02】- 常用的实现多线程的两种方式
- java实现多线程的两种方式继承Thread类和实现Runnable接口
- Java中有两种实现多线程的方式以及两种方式之间的区别
- Java多线程的两种实现方式的区别以及同步问题中的锁对象深刻解析
- JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没
- Java多线程:常用的实现多线程的两种方式
- java多线程两种实现方式
- java 实现多线程的两种方式
- java多线程学习二:两种实现多线程方式的对比