在Java中,僅用於投擲您已經創建例外關鍵字(擲)。如果沒有,有人給它是如何使用自己的例外之外的例子。throw關鍵字在Java中
回答
您可以throw
任何擴展Throwable
void greet(String name) {
if (name == null) {
throw new IllegalArgumentException("Cannot greet null");
}
System.out.println("Hello, " + name);
}
沒有,throw
關鍵字可以任何Exception
,包括內置的人使用:
throw new IllegalArgumentException("Your value passed in was illegal");
@Downvoter爲什麼downvote? – rgettman
如上面所提到的JLS 14.18
The Expression in a throw statement must denote either 1) a variable or value of a reference type which is assignable (§5.2) to the type Throwable, or 2) the null reference, or a compile-time error occurs.
例如,考慮情況如下:
public void factorial(int num)
{
if (num < 0)
{
throw new IllegalArgumentException("Invalid number :"+num);
}
else
//....code for factorial.
}
這裏IllegalArgumentException
不是用戶定義的異常。它是一種建立在RunTimeException
和在Oracle文檔規定:
Thrown to indicate that a method has been passed an illegal or inappropriate argument.
你可以扔東西延伸Throwable
包括錯誤,你的異常,和Java內置例外。
它也可以用於更復雜的邏輯:
你可以用它來其他異常中重新拋出,例如,ThreadDeathErrors
。當一個線程必須死,它可以捕捉這個錯誤:
catch(ThreadDeathError e){
System.out.println("Thread going down");
throw e;
}
這裏,e
是不是你自己的異常,但被抓住了一個錯誤。請尊重錯誤和例外之間的差異,因爲前者通常不會被捕獲。必須重新拋出
線程死亡的錯誤實際上導致theread死亡。
投可用於thow擴展java.lang.Throwable的
- 1. throw關鍵字的用法
- 2. 我可以重載throw關鍵字嗎?
- 3. 關於關鍵字, 「新」 在Java中
- 4. 「throw」關鍵字和「Write-Error-ErrorAction Stop」之間有什麼區別?
- 5. 爲什麼迴歸和throw關鍵字的不是靜態塊
- 6. 是否有必要使用Throwables.propagate(e)使用throw關鍵字?
- 7. 我不明白爲什麼使用throw關鍵字
- 8. Java新關鍵字
- 9. Java類關鍵字
- 10. 在java中的轉到和關鍵字
- 11. 在Java中「實現」關鍵字?
- 12. Vb.Net與關鍵字在Java中?
- 13. 在java中使用關鍵字「this」
- 14. 這個關鍵字在Java和PHP中
- 15. 在java中的foreach關鍵字?
- 16. 在Java中使用class關鍵字
- 17. 在java中聲明關鍵字
- 18. 靜態關鍵字本身在Java中
- 19. 在java中使用「final」關鍵字
- 20. try-catch和throw在java中的區別
- 21. java關鍵字提取
- 22. java這個關鍵字
- 23. Gson Java保留關鍵字
- 24. Java「迭代器」關鍵字
- 25. Java多「where」關鍵字?
- 26. Java KeepPushing遊戲關鍵字
- 27. Java子串的關鍵字
- 28. Java中的native關鍵字是什麼?
- 29. 目標C中的Java關鍵字C
- 30. 用Java中的關鍵字拼圖
任何異常'拋出新拋出:IllegalArgumentException( 「什麼」);' – CPerkins
http://docs.oracle.com/javase/tutorial/essential/例外/ –
如何可以在JVM可能知道是誰創建的異常類?問題沒有意義。 – EJP