每次我实例化一个对象/从其中的一个类中调用一个方法时,我必须看看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. DSA vs RSA:你怎么知道
- 2. 你怎么知道两个物体何时可以通信?
- 3. 你怎么知道一个NSObject是否有某个属性?
- 4. 你怎么知道你的MongoDB中新增了数据
- 5. 你怎么知道你必须使用function(){}?
- 6. 你怎么知道你的mysql命令何时执行?
- 7. 你怎么知道你的WPF控件是否被渲染?
- 8. 你怎么能知道有多少标签是在用户的浏览器
- 9. 怎么可能知道是什么引起的异常
- 10. 我怎么能知道一个PrintWriter
- 11. 我怎么能知道的信号
- 12. 我怎么能知道的AppDelegate
- 13. 你怎么知道你得到一个真正的街道地址?
- 14. 你怎么知道什么时候在Python中关闭文件?
- 15. 你怎么知道主要的启动活动是什么?
- 16. 你怎么知道什么方法用于任务?
- 17. 在清洁之前,git怎么可能知道SHA-1?
- 18. 的Gitlab CI亚军怎么可能知道构建失败
- 19. 你怎么知道你什么时候需要单独的表格?
- 20. 怎么OS知道文件
- 21. 怎么知道后面NAT
- 22. 我怎么能知道当前有效的java.policy
- 23. 你怎么知道一个函数是否返回一个值?
- 24. 你怎么知道编程如果Word宏从VB.Net/C#
- 25. 使用JavaScript,你怎么知道用户是否倒退?
- 26. 你怎么知道RoR网站的托管?
- 27. 怎么知道,当你在一个符号链接
- 28. 作文,你怎么知道何时停止?
- 29. HTTP响应。你怎么知道响应是否通过代理?
- 30. 你如何知道你可以在api中做什么?
大多数IDE都是这样做的,而不仅仅是Eclipse。 – 2009-09-15 18:29:12
正确,好点,我表示Eclipse是我个人的建议。 – mcassano 2009-09-15 18:31:06