Java 线程的创建

来源:互联网 发布:应用最广的编程语言 编辑:程序博客网 时间:2024/06/05 18:21

线程的创建有两种方法。一种方法是创建Thread类的子类,并在子类中重写run方法。如下:

// Thread类的子类public class MyThread extends Thread{    // 无参构造方法    public MyThread(){}    // 带参构造方法    public MyThread(String name){        super(name);    }    public void run() {        System.out.println(getName()+            ": 这是Thread类的子类");    }}public class NewThread1 {    public static void main(String[] args) {        // 创建线程并启动        new MyThread().start();        new MyThread("第2个线程").start();    }}

另一种方法是创建Runable接口的实现类,并实现run方法,再以该类的对象作为参数传递,创建Thread对象并启动线程。具体如下:

public class MyRunnable implements Runnable {    public void run() {        System.out.println(            Thread.currentThread().getName()+                ": 这是Runnable的实现类");    }}public class NewThread2 {    public static void main(String[] args) {        MyRunnable mr = new MyRunnable();        new Thread(mr).start();        new Thread(mr,"第2个线程").start();    }}

第二种方式较第一方式更为常用,因为第二种方式实现的是接口,可以实现多继承,而且创建的多个线程可以共享同一个Runnable实现类的对象,从而实现资源共享。

当然,创建线程的时候也可根据需要采用匿名类的方式。如下:

public class NewThreadTest3 {    public static void main(String[] args) {       // 继承Thread类        new Thread(){            public void run(){                System.out.println(                    "匿名类新建线程1");                        }        }.start();        // 实现Runnable接口        new Thread(new Runnable(){            public void run() {                System.out.println(                    "匿名类新建线程2");                                    }        }).start();    }}
0 0
原创粉丝点击