數(shù)據(jù)加載中……
          總結(jié)一下異常使用
           

          Exception分為:ErrorException(checkedExceptionuncheckedException)。在使用異常的時(shí)候可以先列出以下問(wèn)題

          Exception

          Source

          Scope

          自定義異常名稱

          會(huì)產(chǎn)生自定義異常的方法或事件

          調(diào)用Source的方法或?qū)ο?/span>

          我認(rèn)為uncheckedExceptioncheckedException要好,因?yàn)檫@樣可以減少代碼中try/catch語(yǔ)句,利用異常處理框架(filter)來(lái)統(tǒng)一處理產(chǎn)生的異常。那uncheckedExceptioncheckedException該如何劃分呢?checkedException用來(lái)處理可以預(yù)知的情況,例如已有針對(duì)返回值的不同情況,用If/else判斷。此時(shí)可以用checkedException提醒調(diào)用者對(duì)不同的情況做處理,要比調(diào)用者自己查源代碼然后做出相應(yīng)的判斷要好。uncheckedException用于拋出的異常,一般情況下是不可預(yù)知的,會(huì)導(dǎo)致系統(tǒng)錯(cuò)誤的。例如一個(gè)自定義的方法用來(lái)格式化日期,它需要一個(gè)日期型的字符串,可是偏偏系統(tǒng)傳了一個(gè)空的字段串,這種事很少發(fā)生的,所以不能拋出一個(gè)checkedException,不然會(huì)造成到處都是try/catch語(yǔ)句。此時(shí)uncheckedException就可以用了,在方法上加上@throws uncheckedException,調(diào)用者在不能確定自己傳入的參數(shù)是否合法時(shí),看到方法throw異常,就需要try/catch一下了。(@throws用來(lái)說(shuō)明的是uncheckedException)

          在項(xiàng)目開(kāi)發(fā)過(guò)程中,用XDoclet+Exception來(lái)約束調(diào)用者,效果會(huì)更好一些。

          posted on 2008-04-14 11:14 牛浪de流 閱讀(370) 評(píng)論(1)  編輯  收藏 所屬分類: Framework

          評(píng)論

          # re: 總結(jié)一下異常使用 2008-04-14 11:37 Vagrant

          在做數(shù)據(jù)庫(kù)設(shè)計(jì)的時(shí)候,數(shù)據(jù)完整性的定義是非常必要的。

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 泗洪县| 扬州市| 伊宁市| 台东县| 邻水| 西畴县| 鲜城| 南雄市| 宁河县| 武平县| 镇远县| 房产| 鲁甸县| 巴青县| 娱乐| 锡林郭勒盟| 疏附县| 平远县| 界首市| 收藏| 双流县| 和顺县| 吉林省| 蛟河市| 临武县| 巴楚县| 恩平市| 双桥区| 黄浦区| 南岸区| 苗栗市| 特克斯县| 南江县| 兴和县| 襄城县| 晋宁县| 丰台区| 当涂县| 义马市| 阿城市| 富锦市|