[填空題] 請完善程序(程序文件名:Java_2.java)并進行調試。請在下畫線處填入正確內容,然后刪除下畫線。請勿刪除注釋行和其他已有的語句內容。 [題目
[填空題]
請完善程序(程序文件名:Java_2.java)并進行調試。請在下畫線處填入正確內容,然后刪除下畫線。請勿刪除注釋行和其他已有的語句內容。
[題目要求]
在主線程中創(chuàng)建了一個線程,該線程休眠50ms,然后給變量i賦值。主線程要等該子線程結束后獲得并輸出i的值,使程序的輸出結果如下:
j=10,a.i=10
源程序:
public class Java_2 {
public static void main(String args[]) {
try {
Sleep a=new Sleep();
Thread t=new Thread(a);
t. (1) ();
t.join();
int J=a.i;
System.out.println("j="+j+",a.i="+a.i);
} catch(Exception e) {}
}
}
class Sleep implements Runnable {
int i;
public void run() {
try {
Thread. (2) (50);
i=10;
} catch(InterruptedException e) { }
}
}
sleep
參考解析:題目要求中提到該線程休眠50ms,然后給變量賦值,所以此處應填讓線程休眠的方法sleep。 [程序解析] 本程序通過實現(xiàn)Runnable接口重寫run()方法創(chuàng)建線程t。在此程序中用到了3個方法: (1) start()——剛創(chuàng)建的線程t不會自動運行,需要start方法把嵌入線程中的虛擬CPU置為可運行狀態(tài),意味著線程可被調度執(zhí)行。 (2) t.join()——使當前的線程等待,直到t結束為止,線程恢復到可運行狀態(tài)。 (3) sleep()——該方法使一個線程暫停一段固定時間。
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。