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("敲代码");
            }
    
        }
    
    
    }

    运行结果:

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

    结论:

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

     
     
  • 相关阅读:
    微信公众平台开发者中心安全模式消息体加解密实现
    AES对称加密算法原理
    Token验证失败
    PaySignKey
    UVA 11732
    lua中的pairs和ipairs差别
    【shell学习笔记】curl命令总结
    视频监控系统:C/S &amp; B/S
    Android app开发中用户协议(使用条款)文字自己主动换行
    uva 10154
  • 原文地址:https://www.cnblogs.com/xiaoqiqistudy/p/10984248.html
Copyright © 2011-2022 走看看