继承Thread类实现多线程以及概论

进程:程序制作完成是静态的,程序开始运行就称为程序开始了一个进程

线程:是进程的一个执行单元,是进程的调度实体。比进程更小的独立运行的基本单位。一个程序中存在的多个任务就称为线程,也被称为轻量级进程。如我们写的Main方法就是一个线程

创建线程的三种方式:

  1. Thread class 继承Thread类
  2. Runable 接口 实现Runable接口
  3. Callable接口 实现Callable接口。
public class Thread1 extends Thread{//第一步,继承Thread类
    @Override
    public void run() {//第二步,重写run方法
        for (int i = 0; i <200 ; i++) {
            System.out.println("我在看代码"+i);
        }
    }

    public static void main(String[] args) {
        Thread1 thread1 = new Thread1();//第三步,创建类Thread1的实例对象
        thread1.start();//第四步,调用thread类的start方法
        for (int i = 0; i <200 ; i++) {
            System.out.println("我在学习多线程"+i);
        }
    }
}

以上代码有两个for循环,在没有学习多线程之前,两个输出语句会是先执行run方法,run方法执行完毕后才会执行main方法里面的代码,在学习多线程调用start方法之后可以发现,循环打印的“我在看代码”和“我在学习多线程”是交替执行的,执行的先后顺序由cpu调度。

注意:run()方法是不需要用户来调用的,当通过start方法启动一个线程之后,当线程获得CPU执行时间之时,便进入run方法体去执行具体的任务。注意,继承Thread类必须重写run方法,在run方法中定义具体要执行的任务。执行start方法也会执行run方法里的内容

posted @   萧何i  阅读(81)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示