1.定義乙個異常類,該類從exception類中繼承
2.在try中使用raise語句引發異常
3.except捕獲異常,並執行相關命令
看以下的例子:
#_*_coding=utf-8_*_
#使用自定義異常類實現指定輸入字串長度
#自定義異常類
class
somecustomerror
(exception):
def__init__
(self,str_length):
super(somecustomerror,self).__init__()
self.str_length = str_length
#使用自定義異常
length = input("輸入指定輸入字串長度範圍:\n")
while
true:
try:
s = raw_input("輸入一行字串:\n")
#輸入字串長度超過指定長度範圍,引發異常
if (length < len(s)):
raise somecustomerror(length)
except somecustomerror,x:
print
"捕獲自定義異常"
print
"輸入字串重讀應該小於%d,請重新輸入!" % x.str_length
else:
print
"輸入字串為%s" % s
該程式的作用是指定輸入字串長度,如果輸入字串長度超過指定長度,會引發自定義異常類,並返回重新輸入,直到輸入字串長度滿足指定長度,才退出程式,並列印輸入的字串.
分析程式執行結果:
1.輸入指定字串長度:3
2.輸入字串:1235,由於長度大於3,引發異常,重新輸入
3.重新輸入字串123,滿足字串長度要求,列印輸入字串長度,並退出.
自定義異常類
自定義並捕獲 一 第一種定義方式,繼承exception類 public class myfirstexception extends exception public myfirstexception string msg public myfirstexception string msg,th...
自定義異常類
除了程式裡已經定義好的標準異常類以外,還可以自定義自己的異常類,但通常也和其他標準異常類一樣派生於exception類例如對於乙個 類,如果規定當且僅當任意兩邊長度之和大於第三邊,才能試圖建立乙個三角形或者改變乙個邊長時也不要改變此性質。如果改變了丟擲乙個異常 同時每條邊不能是負數,否則也丟擲異常。...
自定義異常類
當我們在輸入成績,輸入工資,取款的時候,往往都有乙個範圍,而這個範圍不是jvm能夠識別的,因此在輸入的時候就容易出錯,因此在這些時候jdk中的異常無法滿足我們的需求,我們只能自己定義異常類。可以通過繼承exception來派生自己的子異常類。而exception中常用的構造方法 exception ...