实现Runnable接口相对于继承Thread类的优点
来源:互联网 发布:一号店 知乎 编辑:程序博客网 时间:2024/06/09 15:36
- 适合多个相同程序代码的线程去处理同一个资源
- 可以避免由于Java的单继承性带来的局限性
- 增强了程序的健壮性,代码能够被多个线程共享,代码与数据是独立的。
线程对象在实例化的时候只能实例化一个对象
/**定义一个线程
*/
class MyThread implements Runable{
private int ticket=5;//票的数量为5
public void run(){//覆写run方法
for(int i=0;i<100;i++){//定义一个超过票数的循环
if(ticket>0){
System.out.println("卖票了,ticket="+ticket);//还有显示有票的数量
}
}
}
}
/**验证上面线程中ticket被共享
*/
class MyThreadTest{
public static void main(String []args){
MyThread a=new MyThread();//实例化线程对象
//启动两个线程对象去,发现票数据被共享
new Thread(a).start();//启动第一个线程对象
new Thread(a).start();//启动第二个线程对象
/*如果实例化两个对象,比如实例化a再实例化一个b你会发现没有,两个不同的线程没有共享ticket
但是如果MyThread是继承Thread类而不是实现接口Runnable,上面的代码将报错。*/
}
}
- 实现Runnable接口相对于继承Thread类的优点
- java多线程编程中实现Runnable接口方法相对于继承Thread方法的优势
- 继承Thread类和实现Runnable接口的区别。
- 继承Thread父类和实现Runnable接口的区别
- 继承Thread类和实现Runnable接口的对比
- Java 继承Thread类和实现Runnable接口的区别
- Java 继承Thread类和实现Runnable接口的区别
- Java线程示例 - 继承Thread类和实现Runnable接口
- 实现Runnable接口和继承Thread类区别
- 何时继承Thread类何时选择实现Runnable接口
- Java继承thread类与实现Runnable接口
- 线程的创建:实现Runnable接口和继承Thread类,(倒计时的实现)
- JAVA 线程的两种基本实现方法(继承Thread类和实现Runnable接口)
- Java中继承thread类与实现Runnable接口的区别(实现线程)
- java实现多线程的两种方式继承Thread类和实现Runnable接口
- 多线程的实现方法继承thread类与实现runnable接口
- 实现多线程的两种方法:继承Thread类或实现Runnable接口
- 线程实现方式-继承Thread类和实现Runnable接口的区别
- Cocos2d-x开发系列 交叉开发模式四 C++和Lua的数据交互
- Swift 扩展(Extensions)
- 常用垃圾回收算法
- BDF 字体文件格式
- Ubuntu14.04 minicom配置及调试
- 实现Runnable接口相对于继承Thread类的优点
- 给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。 给定一个string stringA和一个string stri
- truetype技术和矢量字库的技术原理及实现
- Swift 协议(Protocols)
- Swift 泛型(Generics)
- 【GOF23设计模式】_解释器模式_访问者模式_数学表达式动态解析库式JAVA247
- 关于字符集的专题知识 UTF-8 GB2312 UNICODE
- Structs+Spring整合所需(笔记)
- Swift 访问控制(Access Control)