詳述thorw與thows的區別

2021-09-20 21:40:40 字數 1640 閱讀 8234

這裡以設定學生年齡不能超過範圍為例來說明為何需要丟擲異常:

//這裡是自定義異常類ageexception,為下面的student類中的調用作鋪墊

//jdk定義的異常類無法準確描述特定異常資訊

//1、定義乙個類,繼承已有異常類(直接或間接繼承runtimeexception,則為執行時異常;否則為檢查時異常(exception))

public

class

ageexception

extends

runtimeexception

}

下面是student類的**:

public

class

student

public

void

setage

(int age)

else

}}

如下是上面**中throw方法丟擲異常的結果:

明顯可以看出其結果對於異常資訊的描述是十分全面和具體的,從此結果裡我們可以直接找到異常所在位置和異常所屬型別

1、throw丟擲的是異常物件;throws丟擲的是類,如果有多個類則使用逗號間隔

//throw丟擲的是異常物件

throw

newageexception

("age值範圍1~150"

);

//throws丟擲的是類,如果有多個類則使用逗號間隔(throws用於宣告方法可能丟擲的異常)

public

void

setage

(int age)

throws ageexception

else

2、hrow用於**塊或方法體;throws只能用於方法引數列表後邊,不能用於**塊(否則會報錯,無需使用**體現)

3、如果throw丟擲的異常是執行時異常,則可以不使用throws;否則必須顯示處理:try-catch或者throws

public

class

test

catch

(printerexception e)

return;}

system.out.

println

(age);}

public

static

void

main

(string[

] args)

catch

(printerexception e)

}}

詳述 與equals的區別

1 在基本資料型別中比較值是否相等,在引用資料型別中比較位址是否相等。int a 12 int b 12 int c 3 system.out.println a b a與b值相同,結果為true system.out.println a c a與c值不同,結果為false string name1...

XmlNode與XmlElement的區別總結

今天在做c 操作xml文件的過程中,發現了兩個類 xmlnode和xmlelement。這兩個類的功能極其類似 因為我們一般都是在對element節點進行操作 上網蒐羅了半天,現在總結如下 1 通過繼承關係xmlelement繼承自xmllinkednode又繼承自xmlnode類,由此可知xmle...

DeleteDC 與 ReleaseDC的區別

deletedc 與 createdc 對應 releasedc 與 getdc 對應 借過來的 getdc 就要放還回去 releasedc 自已建立的 createdc 要自已刪除 deletedc 總之,要 用過之後,不留痕跡 還有以下的特殊情況,如cclientdc dc this 或cpa...