s-day05-多线程的第二种实现方式(重点)

This commit is contained in:
2026-08-05 16:48:46 +08:00
parent 284d5762c5
commit 7bfbfc264b
3 changed files with 34 additions and 2 deletions
+2 -2
View File
@@ -12,7 +12,7 @@ package com.inmind.thread01;
public static Thread currentThread() :获取到当前正在执行的线程对象。(重点) public static Thread currentThread() :获取到当前正在执行的线程对象。(重点)
*/ */
public class Demo01 { public class Demo01 {
public static void main(String[] args) throws InterruptedException { public static void main(String[] args) throws Exception {
/* /*
public Thread() :分配一个新的线程对象。 public Thread() :分配一个新的线程对象。
Thread-0-1-2:无参构造的线程名称 Thread-0-1-2:无参构造的线程名称
@@ -31,7 +31,7 @@ public class Demo01 {
想让当前线程暂停10毫秒,再执行 想让当前线程暂停10毫秒,再执行
public static void sleep(long millis) :使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行)。 public static void sleep(long millis) :使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行)。
*/ */
//Thread.sleep(10); Thread.sleep(10);
/* /*
主线程的名称到底叫什么???获取主线程对象,调用它的getName即可 主线程的名称到底叫什么???获取主线程对象,调用它的getName即可
public static Thread currentThread() :获取到当前正在执行的线程对象。(重点) public static Thread currentThread() :获取到当前正在执行的线程对象。(重点)
@@ -0,0 +1,21 @@
package com.inmind.thread_runnable02;
/*
启动多线程的方式二(重点)
1.定义一个实现类实现Runnable
2.实现抽象方法run方法
3.创建出实现类对象,并将Runnable实现类作为创建Thread对象的参数
4.调用start,启动线程执行run方法
*/
public class Demo02 {
public static void main(String[] args) {
//创建线程任务类对象
MyRunnable myRunnable = new MyRunnable();
//创建线程对象,构造方法中传递线程任务对象
Thread thread = new Thread(myRunnable, "线程666");
thread.start();
for (int i = 0; i < 1000; i++) {
System.out.println("hello java");
}
System.out.println("程序结束");
}
}
@@ -0,0 +1,11 @@
package com.inmind.thread_runnable02;
//只有Thread类的子类才是一个线程类,当前MyRunnable实现类只是在实现run方法,所以当前类是一个线程任务类,可以交给线程去执行
//线程任务类
public class MyRunnable implements Runnable{
@Override
public void run() {//线程任务代码
for (int i = 0; i < 1000; i++) {
System.out.println(Thread.currentThread().getName()+"----"+i);
}
}
}