创建Thread对象的两种常见的方法分析
来源:互联网 发布:手机攻城掠地挂机软件 编辑:程序博客网 时间:2024/05/17 00:19
一、常见的两种方法
1.定义一个线程类,它继承类Thread并重写其中的run方法
- 定义一个类继承Thread类
public class MyThread1 extends Thread{ public void run() { 方法体1; } }
- 调用自定义Thread对象
public static void main(String [] args){ MyThread m1=new MyThread1("thread1"); MyThread m2=new MyThread1("thread2"); MyThread m3=new MyThread1("thread3"); m1.start(); m2.start(); m3.start(); }
2.通过实现Runnable接口来创建多线程
- 定义一个类实现Runnable接口
public class MyThread2 implements Runnable { public void run() { 方法体2; }
- 调用自定义Thread对象
public static void main(String [] args){ MyThread m1=new MyThread1("thread1"); MyThread m2=new MyThread1("thread2"); MyThread m3=new MyThread1("thread3"); m1.start(); m2.start(); m3.start(); }
注:其中方法体1,2中均为线程要实现的操作代码
二、两种方法的比较
第一种方式,继承Thread类,类仅支持单继承,也就是说,当定义一个新的类的时候,它只能扩展一个外部类.这样,如果创建自定义线程类的时候是通过扩展 Thread类的方法来实现的,那么这个自定义类就不能再去扩展其他的类,也就无法实现更加复杂的功能。同时线程任务和线程对象绑定在一起,耦合性(紧密联系程度)高。不便于维护。
第二种方式,实现Runnable接口,线程任 务在实现Runnable接口的类中,线程对象是Thread类对象,线程任务和线程对象相分离,耦合性底,便于维护,可拓展性高。
0 0
- 创建Thread对象的两种常见的方法分析
- JAVA中创建线程对象的两种方法:继承Thread和实现Runable
- Javascript 创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- C++创建对象的两种方法
- 创建UIView对象的两种方法
- C++创建对象的两种方法
- 两种创建对象的方法
- 佳博打印机出现“出错”
- 选择排序(Selection Sort)优化
- Linux用户管理
- nginx 其他模块
- 链表实现功能强大的通讯录
- 创建Thread对象的两种常见的方法分析
- Spirng在Web环境中的启动过程
- Solr查询参数debug/debugQuery (调试)
- PID小结
- 从自己的应用跳转到百度、高德地图
- IIC协议总结
- 选择排序
- 学习:C#实现一个简单的爬虫
- 队列的链式存储结构及实现