在java中创建线程有两种方法

在java中创建线程有两种方法

ID:12672093

大小:34.50 KB

页数:5页

时间:2018-07-18

在java中创建线程有两种方法_第1页
在java中创建线程有两种方法_第2页
在java中创建线程有两种方法_第3页
在java中创建线程有两种方法_第4页
在java中创建线程有两种方法_第5页
资源描述:

《在java中创建线程有两种方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、在Java中创建线程有两种方法:使用Thread类和使用Runnable接口。在使用Runnable接口时需要建立一个Thread实例。因此,无论是通过Thread类还是Runnable接口建立线程,都必须建立Thread类或它的子类的实例。Thread类的构造方法被重载了八次,构造方法如下:  public Thread( );  public Thread(Runnable target);  public Thread(String name);  public Thread(Runnable target, String name); 

2、 public Thread(ThreadGroup group, Runnable target);  public Thread(ThreadGroup group, String name);  public Thread(ThreadGroup group, Runnable target, String name);  public Thread(ThreadGroup group, Runnable target, String name, long stackSize);  Runnable target  实现了Runnable

3、接口的类的实例。要注意的是Thread类也实现了Runnable接口,因此,从Thread类继承的类的实例也可以作为target传入这个构造方法。  Stringname  线程的名子。这个名子可以在建立Thread实例后通过Thread类的setName方法设置。如果不设置线程的名子,线程就使用默认的线程名:Thread-N,N是线程建立的顺序,是一个不重复的正整数。  ThreadGroupgroup  当前建立的线程所属的线程组。如果不指定线程组,所有的线程都被加到一个默认的线程组中。关于线程组的细节将在后面的章节详细讨论。  longs

4、tackSize  线程栈的大小,这个值一般是CPU页面的整数倍。如x86的页面大小是4KB.在x86平台下,默认的线程栈大小是12KB.  一个普通的Java类只要从Thread类继承,就可以成为一个线程类。并可通过Thread类的start方法来执行线程代码。虽然Thread类的子类可以直接实例化,但在子类中必须要覆盖Thread类的run方法才能真正运行线程的代码。下面的代码给出了一个使用Thread类建立线程的例子:   001 package mythread;  002  003 public class Thread1 exten

5、ds Thread  004 {  005 public void run()  006 {  007 System.out.println(this.getName());  008 }  009 public static void main(String[] args)  010 {  011 System.out.println(Thread.currentThread().getName());  012 Thread1 thread1 = new Thread1();  013 Thread1 thread2 = new Threa

6、d1 ();  014 thread1.start();  015 thread2.start();  016 }  017 }  上面的代码建立了两个线程:thread1和thread2.上述代码中的005至008行是Thread1类的run方法。当在014和015行调用start方法时,系统会自动调用run方法。在007行使用this.getName()输出了当前线程的名字,由于在建立线程时并未指定线程名,因此,所输出的线程名是系统的默认值,也就是Thread-n的形式。在011行输出了主线程的线程名。  上面代码的运行结果如下:     

7、main  Thread-0  Thread-1  从上面的输出结果可以看出,第一行输出的main是主线程的名子。后面的Thread-1和Thread-2分别是thread1和thread2的输出结果。  注意:任何一个Java程序都必须有一个主线程。一般这个主线程的名子为main.只有在程序中建立另外的线程,才能算是真正的多线程程序。也就是说,多线程程序必须拥有一个以上的线程。Thread类有一个重载构造方法可以设置线程名。除了使用构造方法在建立线程时设置线程名,还可以使用Thread类的setName方法修改线程名。要想通过Thread类的

8、构造方法来设置线程名,必须在Thread的子类中使用Thread类的publicThread(Stringname)构造方法,因此,必须在Thread

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。