每次我實例化一個對象/從其中的一個類中調用一個方法時,我必須看看java api嗎?另外,我是否總是必須知道java api中哪些類是哪些,哪些不是?你怎麼知道可能有例外?
回答
如果異常被檢查,那麼Java編譯器將迫使你調用方法要麼捕獲該異常或聲明它可能拋出的異常。
如果拋出的異常從Error或RuntimeException繼承 - 即,沒有檢查,那麼除了javadoc和查看代碼之外,你無法知道。
後者的一個很好的例子是NumberFormatException,由Double.parseDouble(String)拋出。要知道的唯一方法是javadoc告訴你它可以拋出這個異常。
現代IDE(Eclipse,Netbeans,IntelliJ等)可以方便地訪問此文檔。
我使用Eclipse IDE,它將確保您處理所有拋出的異常。我強烈推薦它。
知道函數拋出什麼異常與知道它需要什麼參數以及返回什麼類型並無不同。
你要麼知道它,查看它,要麼使用一個IDE來爲你做這件事。順便說一句,檢查異常,你會得到一個編譯時錯誤,所以這也可以是一個選項。
對於你的第二個問題,一般 ...
以 「的Java。」 啓動軟件包或 「的javax。」 都在J2SE API。大多數以互聯網域名前綴(如「com」)開頭的軟件包。或「組織」。由第三方提供。不要指望com.sun雖然穩定。
上面沒有前綴的軟件包可能不會遵循包naming guidelines或早於它們。
你在考慮使用com.sun軟件包 - 這些*不能保證穩定。 javax包與java一樣穩定 - 它的區別在於讓你知道它是一個與Java 2一起出現的「更新」的庫(即Java 1.2而不是Java 1或1.1) - 然而這是他們唯一的一次,已經做到了 - 在Java 1.5中添加了很多東西,但它們沒有添加javaxx命名空間。 – Nate 2009-09-16 01:37:41
你是對的。編輯。 – 2009-09-16 18:46:17
- 1. 你怎麼知道單例模式下的哪個實例
- 2. JavaScript - 想知道這怎麼可能
- 3. 你怎麼知道RStudio正在運行?
- 4. DSA vs RSA:你怎麼知道
- 5. DIV屬於元素,你怎麼知道?
- 6. 你怎麼能知道哪些元素用crossrider文本菜單
- 7. Android:你怎麼知道View已經變得可見?
- 8. 你怎麼知道兩個物體何時可以通信?
- 9. 你怎麼知道一個NSObject是否有某個屬性?
- 10. 你怎麼知道你的MongoDB中新增了數據
- 11. 你怎麼知道你的解決方案從哪裏打開?
- 12. 你怎麼知道你的YAML文件在哪裏破碎?
- 13. 你怎麼知道你的WPF控件是否被渲染?
- 14. 你怎麼知道你的mysql命令何時執行?
- 15. 你怎麼知道你必須使用function(){}?
- 16. 你怎麼能知道有多少標籤是在用戶的瀏覽器
- 17. 怎麼可能知道是什麼引起的異常
- 18. 我怎麼能知道的信號
- 19. 我怎麼能知道的AppDelegate
- 20. 我怎麼能知道一個PrintWriter
- 21. 我怎麼能知道在Linux上
- 22. 你怎麼能histfit
- 23. 空點例外...不知道爲什麼
- 24. 你怎麼知道你得到一個真正的街道地址?
- 25. 你怎麼知道什麼時候在Python中關閉文件?
- 26. 你怎麼知道主要的啓動活動是什麼?
- 27. 你怎麼知道什麼方法用於任務?
- 28. 我不知道它有什麼問題,你可以分析,如果可能
- 29. 怎麼知道如果行有其他表的外鍵
- 30. 怎麼知道沒有擴展
大多數IDE都是這樣做的,而不僅僅是Eclipse。 – 2009-09-15 18:29:12
正確,好點,我表示Eclipse是我個人的建議。 – mcassano 2009-09-15 18:31:06