JUST DO IT ~

          我只想當(dāng)個(gè)程序員

          到底什么是異常



          TMD 到底什么是異常


          程序按照預(yù)期的流程運(yùn)行..正常態(tài)
          出現(xiàn)未預(yù)計(jì)到的情況..比如網(wǎng)線斷了gddg...文件打開失敗...
          這個(gè)時(shí)候 程序是繼續(xù)執(zhí)行 還是 其他的選擇 或者 退出app ....

          實(shí)際的情況是 有可能可以恢復(fù),從業(yè)務(wù)角度出發(fā)..我可以重新試圖連接...可以重新打開文件或者換一個(gè)文件 或者重新創(chuàng)建一個(gè)新的文件....
          只要不是致命的問題..通常是可以恢復(fù)的...沒必要退出app...

          如果你不捕獲 網(wǎng)絡(luò)斷開或者文件無法打開的 異常 ...那么為什么程序退出了呢...因?yàn)槟銢]有告訴你的程序 如果出錯(cuò)了應(yīng)該怎么辦...sun 規(guī)避風(fēng)險(xiǎn),你出錯(cuò)了,可能下一步要錯(cuò)誤的扣除你工資,為了解除這種不確定執(zhí)行的巨大風(fēng)險(xiǎn)...那么就把你app shutdown了....

          如果你有catch 對(duì)于程序來說 你有防備 出現(xiàn)異常的準(zhǔn)備...那么真到了異常 那么就看你異常的處理流程 是否奏效....

          異常體系....瞎扯淡...就是幾個(gè)異常類的繼承關(guān)系(虛擬機(jī)內(nèi)部異常,用戶定義異常 ...).....還能有什么 .
          無非是 根據(jù)不同的出錯(cuò)類型來 包裝異常...給這個(gè)這種類型的異常 或者 這類問題取一個(gè)名字....
          當(dāng)你沒看堆棧信息的時(shí)候大概可以 判斷一下 問題再那里而已.....


          異常來跳轉(zhuǎn) 程序是因?yàn)?無法預(yù)期異常后下步該如何執(zhí)行 所以跳轉(zhuǎn)...
          異常是比較消耗系統(tǒng)資源的.


          .net 為什么沒有主動(dòng)要求你 拋出異常....
          因?yàn)?net的主要架構(gòu)師 再設(shè)計(jì).net時(shí)候看到了 很多程序員 一層一層的拋出異常只在最底層  main中截獲異常....
          那么大量的函數(shù)都是 throws 其實(shí)根本無意義....所以他再設(shè)計(jì)的時(shí)候就沒有采取和java 相同的方式 .



           




          posted on 2009-10-10 01:07 小高 閱讀(355) 評(píng)論(2)  編輯  收藏 所屬分類: java基礎(chǔ)DotNetException 異常處理

          評(píng)論

          # re: 到底什么是異常 2010-02-06 17:24 Green Sea

          那么內(nèi)存申請(qǐng)失敗或除零的異常呢?.NET是怎么處理異常的?  回復(fù)  更多評(píng)論   

          # re: 到底什么是異常 2010-02-06 20:27 gddg

          @Green Sea

          .net 異常有一篇文章介紹 是.net設(shè)計(jì)師做訪談節(jié)目時(shí)候 和java異常比較說的比較細(xì)致。
          java老是拋出異常。實(shí)際程序員都不原因處理拋出到底層。。最后底層處理。 每個(gè)函數(shù)簽名很不優(yōu)雅。。。c#沒什么特別好的方法。。所以就不拋。。你想捕獲就自己在調(diào)用中間捕獲。


          內(nèi)存申請(qǐng)失敗和除0 都是 從最底層開始拋出異常。但是實(shí)際上,你不處理,最后都會(huì)拋到你程序的入口。
            回復(fù)  更多評(píng)論   

          導(dǎo)航

          <2010年2月>
          31123456
          78910111213
          14151617181920
          21222324252627
          28123456
          78910111213

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關(guān)注的blog

          手冊(cè)

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 昂仁县| 邯郸县| 同心县| 延长县| 湟源县| 湖北省| 闽清县| 桦甸市| 马龙县| 淄博市| 浪卡子县| 白山市| 灵川县| 潞西市| 鄄城县| 广汉市| 西昌市| 修水县| 弋阳县| 依兰县| 利川市| 衡南县| 德阳市| 博罗县| 白朗县| 阳朔县| 甘泉县| 铜山县| 涡阳县| 河西区| 赤水市| 闽侯县| 吴川市| 化德县| 娄底市| 福泉市| 迁安市| 洞头县| 湘阴县| 丽水市| 湟中县|