zoukankan      html  css  js  c++  java
  • java 核心编程——线程之线程的开发方法(二)

    1.继承Thread类

      Thread类是一个具体的类,不是抽象类。

    package se.thread;
    
    import java.util.Date;
    
    public class ThreadTest extends  Thread {
    
        public int time;
        public String name;
    
        ThreadTest(int time,String name){
    
            this.name=name;
            this.time=time;
        }
    
        public void run(){
    
            while(true){
                try {
                    System.out.println("用户"+this.name+"正在休息,时间:"+new Date());
                    Thread.sleep(this.time);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
    
        }
    
    
        public static void main(String[] args) {
    
            ThreadTest threadTest1 = new ThreadTest(100,"jack");
            threadTest1.start();
    
            ThreadTest threadTest2 = new ThreadTest(200,"lolo");
            threadTest2.start();
    
    
        }
    
    }

    2.实现Runable接口

    package se.thread;
    
    import java.util.Date;
    
    public class TreadTest2 implements Runnable {
    
    
        public int time;
        public String name;
    
        public TreadTest2(int time,String name){
    
            this.name=name;
            this.time=time;
        }
    
    
    
        @Override
        public void run() {
            while(true){
                try {
                    System.out.println("用户"+this.name+"正在休息,时间:"+new Date());
                    Thread.sleep(this.time);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }
    
        public static void main(String[] args) {
    
            TreadTest2 threadTest2 = new TreadTest2(3000,"004");
            TreadTest2 treadTest22 = new TreadTest2(2000,"125");
            new Thread(threadTest2).start();
            new Thread(treadTest22).start();
    
        }
    }

    3.选择Thread类还是Runable接口?

      1.如果只是想重写Runable接口而不是重写Thread其他方法,则使用Runable接口。

      2.如果子类继承了其他非Thread类,则只能通过实现Runable接口来实现run()的重写。

  • 相关阅读:
    2018/12/05 PAT刷题 L1-014 简单题 Java
    2018/12/05 PAT刷题 L1-013 计算阶乘和 Java
    2018/12/04 PAT刷题 L1-012 计算指数 java
    L1-011 A-B Java 部分解
    2018/12/04 PAT再思考 L1-010 比较大小
    2018/12/04 PAT刷题 L1-009 N个数求和 java
    2018/12/04 PAT刷题 L1-008 求整数段和 java
    2018/12/04 PAT刷题 L1-007 念数字 java
    建造者模式
    外观模式
  • 原文地址:https://www.cnblogs.com/wwyx-xi/p/7525260.html
Copyright © 2011-2022 走看看