java多線程面試題_第1頁
java多線程面試題_第2頁
java多線程面試題_第3頁
java多線程面試題_第4頁
java多線程面試題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、java多線程面試題i. 什么是多線程編程?什么時候使用? 多線程一般用于當(dāng)一個程序需要同時做一個以上的任務(wù)。多線程通常用于GUI交互程序。一個新的線程被創(chuàng)建做一些耗時的工作,當(dāng)主線程保持界面與用戶的交互。2. 為什么wait(),notify()和notifyall()函數(shù)定義在Object類里面?因為所有類都是繼承于Object類,這樣所有類就可以簡單的進行多線程編程了。3. wait()方法和sleep()方法有什么不同?sleep()方法執(zhí)行后仍然擁有線程,只是延時。而wait方法放棄了線程控制,其它線程可以運行,想要再次運行是要重新開始。4. Thread和Runnable有什么不同

2、?JAVA線程控制著程序執(zhí)行的主路徑。當(dāng)你用java命令調(diào)用JVM時,JVM創(chuàng)建了一個隱式線程來執(zhí)行 main方法。Thread類提供了主線程調(diào)用其它線程并行運行的機制。Runnable接口定義了一個能被 Thread運行的類。實現(xiàn) Runnable的類只需要實行run方 法。可以很靈活的擴展現(xiàn)在的已經(jīng)繼承自其它父類的類。而thread則不可以,因為java只允許繼承一個父類。Runnable可以共享數(shù)據(jù),Thread是一個類,而 Runnable是一個接口5. 我可以重載start()方法么?可以重載,重載后還要重載run ()方法,9. 編譯運行下面的代碼會發(fā)生什么?1. public c

3、lass Bground extends Thread 2. public static void main (Stringargv )3.4.Bground b =new Bground ();5.b.run ();7.public void start ()6.10.9.for(int i =0; i <10; i+ )10.System . out . println("Value ofi ="+ i );11.12.13.A. 編譯錯誤,Thread類中的run方法沒有定義B. 運行時錯誤,Thread類中的run方法沒有定義C. 編譯無錯,打印0到9.D.

4、編譯無錯,不打印任何值10. 關(guān)于下面一段代碼,哪些描述是正確的1. public class Agg 2. public static void main (Stringargv )3. Agg a =new Agg ();4. a.go();5. 6.7.public void go ()8.DSRoss ds1 =new DSRoss ("one");9.ds1.start ();11. 12.13. class DSRoss extends Thread 14.privateStringsTnameHH15.16.DSRoss( String s)17.sTname

5、= s18.19.20.publicvoidrun() 21.notwait() ;22.System .out .println( "finished"23.24.25.publicvoidnotwait ()26.while (true)27.try28.System . out. println (ting");29.wait() ;)"wai30. catch(InterruptedExceptionie ) 31.32.System . out . println( sTname )33. notifyAII();34. 35. 36. A.

6、編譯錯誤B. 能夠編譯,輸出“ waiting"C. 能夠編譯,輸出“ wait in g",緊接著輸出"fini sh"D. 運行時錯誤,會拋異常11. 編譯運行下面的代碼會發(fā)生什么1. public class Test2. private String3.3. public staticargv )4. Test h =extends Thread sThreadName ;void main (Stringnew Test ();7.30. catchh. go()7.9.Test ()10.11.12.Test ( Strings ) 13.s

7、ThreadName =s;14.15.16.publicStringgetThreadName17.return sThreadName ;18.19.20.publicvoidgo () 21.Test first=new Test (22.first.start () ;23.Test second =newTest( "second");24.second.start () ;25.26.27.publicvoidstart () 28.for( inti = 0; i < 28.()"first"); i+29.System . out

8、. printin ( getThre30.adName() + i );try 31.Thread . sleep (100);32.2.public staticvoid main (String catch(InterruptedExceptione ) 33.System . out . println( e. getMessage();34.35.36. 37. A. 編譯錯誤B. 輸出 firstO, second0, first1, second1.C. 輸出 first0, first1, sec on d0, seco nd1.D. 運行時錯誤12. 編譯運行下面的代碼會發(fā)生

9、什么1. public class Test argv )3.Pmcraven pm1 =newPmcraven ("one");5.Pmcraven pm2 =newPmcraven ( "two");6.pm2.run () ;7.8.9.10.class Pmcraven extends Thread11.privateStringsTname = ""12.13.Pmcraven( Strings ) 14.sTname =s;15.16.17.publicvoid run() 18.for( int i =0; i < 2;19.try 20.sleep( 1000 ) ;21. catch( InterruptedExceptione ) 22.23

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論