zoukankan      html  css  js  c++  java
  • java中多线程的两种创建方式

    一丶继承Thread类实现多线程

    第一步:继承Thread类
    第二步:重写run()方法
    第三步:创建继承了Thread类的对象 , 调用start()方法启动。
    //线程创建方式一 :
    /*
    第一步:继承Thread类
    第二步:重写run()方法
    第三步:创建继承了Thread类的对象 , 调用start()方法启动。
     */
    public class TestThread extends Thread{
        @Override
        public void run() {
            for (int i = 0; i < 3000; i++) {
                System.out.println("爱你三千遍");
            }
        }
    
        public static void main(String[] args) {
            TestThread testThread = new TestThread();
             testThread.start();
        }
    
    }

    二丶实现Runnable接口创建多线程

    第一步:实现runnable接口
    第二步:冲写run方法
    第三步:创建实现类对象,创建代理类thread类对象 +start()方法启动线程
    public class Thread_Study implements Runnable{
    /*
    * 第一步:实现runnable接口
    * 第二步:冲写run方法
    * 第三步:创建实现类对象,创建代理类thread类对象 +start()方法启动线程
    *
    * */
    
        @Override
        public void run() {
            for (int i = 0; i < 100; i++) {
                System.out.println("看书");
            }
        }
    
        public static void main(String[] args) {
            Thread_Study ts = new Thread_Study();
            new Thread(ts).start();
            for (int i = 0; i < 100; i++) {
                System.out.println("敲代码");
            }
    
        }
    
    
    }

    运行结果:

    敲代码
    敲代码
    敲代码
    敲代码
    敲代码
    敲代码
    敲代码
    敲代码
    看书
    看书
    看书
    看书
    看书
    看书
    看书

    结论:

    我们可以观察到敲代码和看书同时进行每个线程之间是不相互干涉的,各自执行各自的,这和调用方法不同,调用方法是等到上一个步骤执行完成才可以在执行下一个步骤.

     
     
  • 相关阅读:
    【转】EDK简单使用流程(3)
    【转】应用 printf 语句格式化输出字符
    【转】[FPGA博客大赛](updated)在xilinx的FPGA系统中scanf函数的使用
    BZOJ 1083 [SCOI2005]繁忙的都市
    BZOJ 2821 分块统计
    BZOJ 1034 [ZJOI2008]泡泡堂BNB
    BZOJ 1029 [JSOI2007]建筑抢修
    BZOJ 1096 [ZJOI2007]仓库建设
    BZOJ 1070 [SCOI2007]修车
    BZOJ 1040 [ZJOI2008]骑士
  • 原文地址:https://www.cnblogs.com/xiaoqiqistudy/p/10984248.html
Copyright © 2011-2022 走看看