华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
全國  |             |          |          |          |          |         
  當(dāng)前位置:計算機(jī)等級 > 二級考試 > Java語言程序設(shè)計 > 考試輔導(dǎo) > 文章內(nèi)容
  

全國計算機(jī)等級考試Java語言程序設(shè)計輔導(dǎo)(102)

中華IT學(xué)院   【 】  [ 2016年3月18日 ]

下表列出了Thread類的一些重要方法:

序號 方法描述
1 public void start()
使該線程開始執(zhí)行;Java 虛擬機(jī)調(diào)用該線程的 run 方法。
2 public void run()
如果該線程是使用獨(dú)立的 Runnable 運(yùn)行對象構(gòu)造的,則調(diào)用該 Runnable 對象的 run 方法;否則,該方法不執(zhí)行任何操作并返回。
3 public final void setName(String name)
改變線程名稱,使之與參數(shù) name 相同。
4 public final void setPriority(int priority)
 更改線程的優(yōu)先級。
5 public final void setDaemon(boolean on)
將該線程標(biāo)記為守護(hù)線程或用戶線程。
6 public final void join(long millisec)
等待該線程終止的時間最長為 millis 毫秒。
7 public void interrupt()
中斷線程。
8 public final boolean isAlive()
測試線程是否處于活動狀態(tài)。

測試線程是否處于活動狀態(tài)。 上述方法是被Thread對象調(diào)用的。下面的方法是Thread類的靜態(tài)方法。

序號 方法描述
1 public static void yield()
暫停當(dāng)前正在執(zhí)行的線程對象,并執(zhí)行其他線程。
2 public static void sleep(long millisec)
在指定的毫秒數(shù)內(nèi)讓當(dāng)前正在執(zhí)行的線程休眠(暫停執(zhí)行),此操作受到系統(tǒng)計時器和調(diào)度程序精度和準(zhǔn)確性的影響。
3 public static boolean holdsLock(Object x)
當(dāng)且僅當(dāng)當(dāng)前線程在指定的對象上保持監(jiān)視器鎖時,才返回 true。
4 public static Thread currentThread()
返回對當(dāng)前正在執(zhí)行的線程對象的引用。
5 public static void dumpStack()
將當(dāng)前線程的堆棧跟蹤打印至標(biāo)準(zhǔn)錯誤流。

實(shí)例

如下的ThreadClassDemo 程序演示了Thread類的一些方法:

// 文件名 : DisplayMessage.java
// 通過實(shí)現(xiàn) Runnable 接口創(chuàng)建線程
public class DisplayMessage implements Runnable
{
   private String message;
   public DisplayMessage(String message)
   {
      this.message = message;
   }
   public void run()
   {
      while(true)
      {
         System.out.println(message);
      }
   }
}
// 文件名 : GuessANumber.java
// 通過繼承 Thread 類創(chuàng)建線程

public class GuessANumber extends Thread
{
   private int number;
   public GuessANumber(int number)
   {
      this.number = number;
   }
   public void run()
   {
      int counter = 0;
      int guess = 0;
      do
      {
          guess = (int) (Math.random() * 100 + 1);
          System.out.println(this.getName()
                       + " guesses " + guess);
          counter++;
      }while(guess != number);
      System.out.println("** Correct! " + this.getName()
                       + " in " + counter + " guesses.**");
   }
}
// 文件名 : ThreadClassDemo.java
public class ThreadClassDemo
{
   public static void main(String [] args)
   {
      Runnable hello = new DisplayMessage("Hello");
      Thread thread1 = new Thread(hello);
      thread1.setDaemon(true);
      thread1.setName("hello");
      System.out.println("Starting hello thread...");
      thread1.start();
     
      Runnable bye = new DisplayMessage("Goodbye");
      Thread thread2 = new Thread(bye);
      thread2.setPriority(Thread.MIN_PRIORITY);
      thread2.setDaemon(true);
      System.out.println("Starting goodbye thread...");
      thread2.start();
 
      System.out.println("Starting thread3...");
      Thread thread3 = new GuessANumber(27);
      thread3.start();
      try
      {
         thread3.join();
      }catch(InterruptedException e)
      {
         System.out.println("Thread interrupted.");
      }
      System.out.println("Starting thread4...");
      Thread thread4 = new GuessANumber(75);
     
           thread4.start();
      System.out.println("main() is ending...");
   }
}

運(yùn)行結(jié)果如下,每一次運(yùn)行的結(jié)果都不一樣。

Starting hello thread...
Starting goodbye thread...
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Thread-2 guesses 27
Hello
** Correct! Thread-2 in 102 guesses.**
Hello
Starting thread4...
Hello
Hello
..........remaining result produced.
分享到:
本文糾錯】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
湖南省| 盐津县| 桐城市| 成都市| 长沙市| 昌邑市| 伊春市| 隆化县| 商南县| 阳江市| 广州市| 奉贤区| 怀柔区| 石城县| 延安市| 永嘉县| 修文县| 莫力| 黄石市| 弥渡县| 白朗县| 嘉义市| 广平县| 张家界市| 南溪县| 三亚市| 泸州市| 班戈县| 连平县| 平昌县| 南部县| 柯坪县| 方城县| 内丘县| 临朐县| 贺兰县| 和平县| 葵青区| 张家口市| 定西市| 清苑县|