檢視 SCJP 1.6版考題 236 的原始碼
←
SCJP 1.6版考題 236
前往:
導覽
,
搜尋
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
管理員
您可以檢視並複製此頁面的原始碼。
Given: <br>1. class Computation extends Thread{ <br>2. <br>3. private int num; <br>4. private boolean isComplete; <br>5. private int result; <br>6. <br>7. public Computation(int num){this.num = num;} <br>8. <br>9. public synchronized void run(){ <br>10. result = num * 2; <br>11. isComplete = true; <br>12. notify(); <br>13. } <br>14. <br>15. public synchronized int getResult(){ <br>16. while(!isComplete){ <br>17. try{ <br>18. wait(); <br>19. }catch(InterruptedException e){} <br>20. } <br>21. return result; <br>22. } <br>23. <br>24. public static void main(String[] args){ <br>25. Computation[] computations = new Computation[4]; <br>26. for(int i=0; i<computations.length; i++){ <br>27. computations[i] = new Computation(i); <br>28. computations[i].start(); <br>29. } <br>30. for(Computation c : computations) <br>31. System.out.print(c.getResult() + " "); <br>32. } <br>33. } <br> <br> <br>What is the result? <br> <br>A. The code will deadlock. <br>B. The code may run with no output. <br>C. An exception is thrown at runtime. <br>D. The code may run with output "0 6". <br>E. The code may run with output "2 0 6 4". <br>F. The code may run with output "0 2 4 6". <div class="toccolours mw-collapsible mw-collapsed"> <span style="font-size:medium;">解答</span> ---- <div class="mw-collapsible-content"> <span style="font-size: medium;">Ans: F </span> <span style="font-size:medium;"> 解說: 第25~29行建立四個Thread物件,然後分別啟動這四個執行緒物件… <br> <br>緊接著30~31行分別讓四個執行緒物件呼叫getResult方法,然後分別進入對各自執行緒物件的等待事件中… <br>最後四個執行緒的run方法分別通知各自執行緒離開wait狀態… <br> <br>比較可能的輸出是F,因為各執行緒物件的num是依for迴圈0~3再乘以2得來,輸出依0 2 4 6的機率較高。 </span> </div></div> {{SCJP 1.6版考題講解}}
此頁面使用了以下模板:
模板:Navbar
(
檢視原始碼
)
模板:Navbox
(
檢視原始碼
)
模板:SCJP 1.6版考題講解
(
檢視原始碼
)
模板:Transclude
(
檢視原始碼
)
返回至
SCJP 1.6版考題 236
。
導覽選單
個人工具
登入
命名空間
頁面
討論
變體
檢視
閱讀
檢視原始碼
檢視歷史
更多
搜尋
導覽
首頁
基本資料
專案計劃
教授課程(本學期)
創意3D列印實務
程式設計
資料結構
WordPress
教授課程(所有)
資訊安全
科技英文
資料庫管理
管理專業英文
管理資訊系統
作業系統
專利與發明
程式設計
學生專題
網路概論
技術與學習
Delphi XE
3D印表機
SCJP考題
Arduino/pcDuino
Android
Linux/Unix
虛擬/雲端作業系統
網站功能
Wiki安裝設定筆記
隨機頁面
說明
工具
連結至此的頁面
相關變更
特殊頁面
頁面資訊