国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

一個關于拋出異常的程序代碼的分析

2019-11-18 12:05:41
字體:
來源:轉載
供稿:網友

  1. public class test {
  2. public static string output = “”
  3.
  4. public static void foo(int i) {
  5. try {
  6. if(i= =1) {
  7. throw new Exception ();
  8. }
  9. output += “1”;
  10. )
  11. catch(Exception e) {
  12. output += “2”;
  13. return;
  14. )
  15. finally (
  16. output += “3”;
  17. )
  18. output += “4”;
  19. )
  20.
  21. public static void main (string args[]) (
  22. foo(0);
  23. foo(1);
  24.
  25. )
  26. )
  What is the value of the variable output at line 24?
  Ans: 13423
  答案怎么會輸出5個數字呢?
  首先,foo(0),就直接到第9行。output=1
  然后,因為沒有拋出異常,所以直接運行16行。
  然后運行18行。此時,output=134.
  foo(1),因為拋出異常,所以運行12行。
  然后因為catch了異常,然后運行finally里的語句。
  但是18行的不再被運行,因為13行已經要求return了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托里县| 红河县| 六安市| 滨州市| 垫江县| 昭平县| 攀枝花市| 龙井市| 林州市| 新竹县| 卢氏县| 将乐县| 密山市| 视频| 白山市| 东山县| 富裕县| 南靖县| 永嘉县| 眉山市| 莱州市| 关岭| 旌德县| 黑龙江省| 江油市| 成安县| 友谊县| 连平县| 安化县| 南川市| 阿克陶县| 屏南县| 获嘉县| 五台县| 静海县| 佛坪县| 图木舒克市| 根河市| 进贤县| 长丰县| 德清县|