多线程学习笔记Thread类和Runnable接口

1.什么是线程
线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100 毫秒,那么用十个线程完成改任务只需 10 毫秒。Java在语言层面对多线程提供了很好的支持。

Thread类 和 Runnable接口
在这里插入图片描述
在这里插入图片描述

通过Thread创建一个类
package Thread;
class MyThread extends Thread{
//定义一个MyThread线程并继承Therad类
public void run(){
//在run();重写代码
System.out.println(getName()+“这是一个线程”);

 }

}

public class Thread01 {
public static void main(String[] args) {
System.out.println(“线程1”);
MyThread mt = new MyThread();
mt.start();
//start();启动线程
System.out.println(“线程2”);

}

}

做个题玩玩????
在这里插入图片描述

B

在这里插入图片描述

为什么有了Thread后还有有Runnable呢?
1.因为Java不支持多继承(接口可以实现多个接口)
2.不打算重写Thread类的其他方法(继承就会继承它的所有方法)

用Runnable接口创建线程的主要工作如下
声明实现Runnable接口类
在实现类内实现run()方法
创建实现类对象
通过实现类对象创建线程类对象
调用start()方法启动线程

package Thread.com.test;

class PRunnable implements Runnable{
//先定义PRunnable实现类对象
@Override
public void run() {
//在实现类内实现run()方法
System.out.println(Thread.currentThread().getName()+“正在运行!”);
}
}
//创建实现类的对象
public class Test{
public static void main(String[] args) {

    //通过实现类的对象创建线程类的对像

    PRunnable pr = new PRunnable();
    //然后(pr)创建线程
    Thread t1 =new Thread(pr);
    //然后通过Thread下的start启动
    t1.start();


}

}
做个题玩玩???
在这里插入图片描述

package Thread.com.test;
class PRunnable1 implements Runnable{

@Override
public void run() {
    for (int i = 1; i <=3 ; i++) {
        if (Thread.currentThread().getName() == "A dog"){
            System.out.println("Tread- "+0+Thread.currentThread().getName());
            // 当线程类实现Runnable接口时,
            // 如果想获取当前线程,只能用Thread.currentThread()方法。
            
        }else {
            System.out.println("Tread- "+1+Thread.currentThread().getName());
        }
            

    }
}

}

public class Test02 {
public static void main(String[] args) {
for (int i =1; i <=3 ; i++) {
System.out.println(Thread.currentThread().getName()+“Thread”);

    }
    PRunnable1 p2 = new PRunnable1();
    new Thread(p2,"A dog").start();
    new Thread(p2,"A cat").start();
}

}

别困惑世界的匆忙 没有方向就去学习


版权声明:本文为mqf15565844264原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。