进阶day06-Thread和Runnable的区别

This commit is contained in:
2026-03-07 13:55:42 +08:00
parent c70570200c
commit 530da7f279
4 changed files with 16 additions and 0 deletions

View File

@@ -1,6 +1,8 @@
package com.inmind.thread07; package com.inmind.thread07;
public class MyThread extends Thread{ public class MyThread extends Thread{
public MyThread(String name) { public MyThread(String name) {
super(name); super(name);
} }

View File

@@ -0,0 +1,10 @@
package com.inmind.callable02;
/*
实现Runnable接口比继承Thread类所具有的优势
1. 适合多个相同的程序代码的线程去共享同一个资源。
2. 可以避免java中的单继承的局限性。
3. 解耦性(线程管理和线程任务分开,线程任务可以给不同的线程对象执行)
4. 线程池只能放入实现Runnable或callable类的线程不能直接放入继承Thread的类
*/
public class Demo2 {
}

View File

@@ -11,6 +11,8 @@ public class RunnableDemo01 {
//创建线程任务对象 //创建线程任务对象
RunnableImpl runnable = new RunnableImpl(); RunnableImpl runnable = new RunnableImpl();
//创建线程对象,并给它设置一个任务 //创建线程对象,并给它设置一个任务
Thread thread1 = new Thread(runnable);
Thread thread2 = new Thread(runnable);
Thread thread = new Thread(runnable); Thread thread = new Thread(runnable);
thread.start(); thread.start();

View File

@@ -2,6 +2,8 @@ package com.inmind.thread01;
//注意只有Thread类才能表示线程当前Runnable实现类型只是用来定义run方法的所以我们可以把 //注意只有Thread类才能表示线程当前Runnable实现类型只是用来定义run方法的所以我们可以把
//Runnable实现类理解成一个线程任务类 //Runnable实现类理解成一个线程任务类
public class RunnableImpl implements Runnable{ public class RunnableImpl implements Runnable{
int num = 100;//成员变量
//ctrl+o:弹出当前类中可以重写的方法 //ctrl+o:弹出当前类中可以重写的方法
@Override @Override
public void run() {//新的线程要执行的任务代码 public void run() {//新的线程要执行的任务代码