[單項(xiàng)選擇題] 閱讀下面程序 1 public class Try extends Thread{ 2public static void main(
[單項(xiàng)選擇題] 閱讀下面程序 1 public class Try extends Thread{ 2public static void main(String args[]){ 3 Try t=new Try(); 4 t.start(); 5 } 6 7public void run(int j){ 8 int i=0; 9 while(i<5){ 10 System.out.println(“祝你成功!”); 11 i++; 12 } 13 } 14} 該程序要求打印5行“祝你成功!”,必須改正程序中的某行代碼,程序才能完成。選擇正確的修改是【 】
A.將第1行的extendsThread改為implementsRunnable
B.將第3行的newTry()改為newThread()
C.將第4行t.start()改為start(t)
D.將第7行的publicvoidrun(intj)改為publicvoidrun()
正確答案:D
參考解析:本題考查線程的創(chuàng)建。Java語言中提供兩種創(chuàng)建線程的方法,一種是通過實(shí)現(xiàn)Runnable接口來創(chuàng)建線程,另一種是通過繼承Thread類創(chuàng)建線程。顯然,題目中的程序是使用第二種方法來創(chuàng)建線程。Thread類中定義了run()方法,所以通過繼承 Thread類來創(chuàng)建線程時(shí)還要重寫Thread類中的run()方法。而run()方法的定義如下: public void run(){ } 題目中的代碼比較簡單,就是創(chuàng)建了一個(gè)線程,這個(gè)線程完成的操作就是打印5行“祝你成功”。仔細(xì)閱讀程序,不難發(fā)現(xiàn)第7行有錯(cuò)。在run()方法的定義中是沒有參數(shù)的,而題目程序中的run方法卻帶有一個(gè)參數(shù)。因此,要把第7行的代碼改為“public void run()”。因此,本題的正確答案是D。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。