手工丟擲異常的方法與自定義異常

2021-08-28 05:46:26 字數 1110 閱讀 6247

1.raise語句丟擲異常

2.aseert語句

3.自定義異常

def testraise():

for i in range(5):

if i==2:

raise nameerror #手工丟擲異常

#print('hello')

print(i)

print('end.......')

testraise()

注意:手工丟擲的異常如果不捕獲,同樣會中斷程式執行。

捕獲手工丟擲的異常:

def testraise():

for i in range(5):

try:

if i==2:

raise nameerror

#print('hello')

except nameerror:

print('raise a nameerror!')

print(i)

print('end.......')

testraise()

手工丟擲異常之  ---assert丟擲異常:

def testassert():

for i in range(3):

try:

assert i<2 #當i<2不成立時,就會丟擲異常

except assertionerror:

print('raise a assertionerror!')

print(i)

print('end.......')

testassert()

自定義乙個異常並拋出自定義異常:

class rangeerror(exception):

def __init__(self,value):

self.value=value #value是異常發生時的資訊

def __str__(self): #返回異常發生時的資訊的字串

return self.value

raise rangeerror('rangeerror')

丟擲異常 自定義異常

1 try catch try catch是這之間所包含的 如果出現異常時捕獲他,並進行處理的,如果 之間有錯誤,不會影響程式繼續執行下去,程式會繼續往後執行。2 throw 是在程式中明確丟擲引發的異常,比如throw new exception 3 finally 不管有沒有異常程式段中都會被執...

如何丟擲異常,自定義異常

定義乙個方法,丟擲 陣列越界和算術異常 多個異常 用 隔開 public void test1 int x throws arrayindexoutofbound ception,arithmeticexception 資料越界異常 else if x 1 算術異常 else if x 2 publ...

OC丟擲異常與自定義異常類

main.m oc丟擲異常與自定義異常類 created by goddog on 15 1 11.1.自行丟擲異常,應該使用 throw語句,throw語句可以單獨使用,throw語句丟擲的不是異常類,而是乙個異常例項。myexception.h oc丟擲異常與自定義異常類 created by ...