• 01_线程的创建和启动


     
    1、线程的使用步骤
     
    2、第一种定义线程类的方法:继承java.lang.Thread类
    MyThread 文件:
    public class MyThread extends Thread {
     
    private int count=0;
    @Override
    public void run()
    {
    System.out.println("线程已启动");
    while(count<10000) {
    count++;
    }
    System.out.println("count:"+count);
    }
    }
     
    TestMyThread 文件:
    public class TestMyThread {
    /*
    * 继承Thread类创建线程
    * 1、继承Thread类
    * 2、重写run方法
    * 3、实例化线程对象
    * 4、调用start方法启动线程
    *
    * 继承Thread类会存在什么问题?
    * 线程类不能继承其他类
    */
    public static void main(String[] args)
    {
    //实例化线程对象
    Thread myThread=new MyThread();
    //启动线程
    myThread.start();
    /*
    * start方法的作用:该方法会使操作系统初始化一个新的线程,由这个新的线程来执行线程对象的run方法
    */
    }
    }
     
    运行效果:
    3、第二种定义线程类的方法:继承java.lang.Runnable接口
    MyRunnable文件:
    public class MyRunnable implements Runnable {
    private int count=0;
    @Override
    public void run() {
    count++;
    System.out.println("count:"+count);
    }
    }
    TestMyRunnable文件:
    public class TestMyRunnable {
     
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Runnable my=new MyRunnable();
     
    System.out.println("thread启动了");
    Thread thread=new Thread(my);
     
    System.out.println("thread2启动了");
    Thread thread_2=new Thread(my);
    thread.start();
    thread_2.start();
    }
     
    }
     
    4、两种创建方式的比较
  • 相关阅读:
    Pull Request
    选择器
    常见HTTP状态码
    286. Walls and Gates
    200. Number of Islands
    1. Two Sum
    名片管理系统(python实现)
    k近邻算法(简单版)
    基数排序
    递归算法的调试
  • 原文地址:https://www.cnblogs.com/schangxiang/p/11173860.html
Copyright © 2020-2023  润新知