进阶day06-Thread和Runnable的区别
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
package com.inmind.thread07;
|
||||
|
||||
public class MyThread extends Thread{
|
||||
|
||||
|
||||
public MyThread(String name) {
|
||||
super(name);
|
||||
}
|
||||
|
||||
10
javaSE-day06/src/com/inmind/callable02/Demo2.java
Normal file
10
javaSE-day06/src/com/inmind/callable02/Demo2.java
Normal file
@@ -0,0 +1,10 @@
|
||||
package com.inmind.callable02;
|
||||
/*
|
||||
实现Runnable接口比继承Thread类所具有的优势:
|
||||
1. 适合多个相同的程序代码的线程去共享同一个资源。
|
||||
2. 可以避免java中的单继承的局限性。
|
||||
3. 解耦性(线程管理和线程任务分开,线程任务可以给不同的线程对象执行)
|
||||
4. 线程池只能放入实现Runnable或callable类的线程,不能直接放入继承Thread的类
|
||||
*/
|
||||
public class Demo2 {
|
||||
}
|
||||
@@ -11,6 +11,8 @@ public class RunnableDemo01 {
|
||||
//创建线程任务对象
|
||||
RunnableImpl runnable = new RunnableImpl();
|
||||
//创建线程对象,并给它设置一个任务
|
||||
Thread thread1 = new Thread(runnable);
|
||||
Thread thread2 = new Thread(runnable);
|
||||
Thread thread = new Thread(runnable);
|
||||
thread.start();
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@ package com.inmind.thread01;
|
||||
//注意:只有Thread类才能表示线程,当前Runnable实现类型,只是用来定义run方法的,所以我们可以把
|
||||
//Runnable实现类理解成一个线程任务类
|
||||
public class RunnableImpl implements Runnable{
|
||||
int num = 100;//成员变量
|
||||
|
||||
//ctrl+o:弹出当前类中可以重写的方法
|
||||
@Override
|
||||
public void run() {//新的线程要执行的任务代码
|
||||
|
||||
Reference in New Issue
Block a user