java线程

来源:互联网 发布:淘宝网苏州虎丘牌二胡 编辑:程序博客网 时间:2024/05/20 10:12

线程就是里面不同的执行路径,没有线程的程序只有一条执行路径,main()是主线程,机器里面运行的都是线程,java的线程是通过java.lang.Thread类来实现的。

一、线程的创建:

创建线程的两种方法:尽量使用接口

1.  定义线程类实现Runnable接口:

  • Thread myThread = new Thread(target)   //target为Runnable接口类型
  • Runnable 中只有一个方法:public void run();用以定义线程运行体。
  • 使用Runnable接口可以为多个线程提供共享的数据。
  • 在实现Runnable接口的类的run方法定义中可以使用Thread的静态方法:public static Thread currentThread()获取当前线程的引用
public class TestThread {public static void main(String[] args){Runner1 r = new Runner1();Thread t = new Thread(r);t.start();for(int i=0; i<100; i++){System.out.println("Main Thread:-------->" + i);}}}class Runner1 implements Runnable{public void run(){for(int i=0;i<100;i++){System.out.println("Runner1:" + i);}}}

2.  可以定义一个Thread的子类并重写其run方法:

class MyThread extends Thread{

        public void run(){...}

}

然后生成该类的对象:

MyThread myThread = new MyThread(...)


public class TestThread {public static void main(String[] args){Runner1 r = new Runner1();r.start();//Thread t = new Thread(r);//t.start();for(int i=0; i<100; i++){System.out.println("Main Thread:-------->" + i);}}}class Runner1 extends Thread{public void run(){for(int i=0;i<100;i++){System.out.println("Runner1:" + i);}}}

二、线程方法:

1.sleep方法:

  • 可以调用Thread的静态方法:public static void sleep(long millis) throws InterruptedException使得当前线程休眠()暂时停止执行millis毫秒。
  • 由于是静态方法,sleep可以由类名直接调用:Thread.sleep(...)。


 

原创粉丝点击