如何找到java类?

时间:2009-06-09 22:54:55

标签: java class-library

我是编程的新手,我想知道是否有办法找到我需要的特定事物的java类,而不是在论坛上向人们询问?我在sun网站上看过API,但没有很好的搜索选项可以找到适合我的课程。

8 个答案:

答案 0 :(得分:20)

如果您是Java(或编程)的新手,那么学习如何阅读和理解文档以实现自我依赖将变得非常重要 - 这是减少其他人依赖的第一步,在大多数情况下,将提高您的学习和编程速度。

以下是一些提示和建议:

了解Java API Specification

起初,API规范的Javadoc格式似乎有点动力不足,没有任何搜索能力,但我发现能够使用浏览器浏览文档非常强大。

由于Javadocs只是HTML文件,因此可以在浏览器中轻松查看和导航它们,并且书签页面也很容易。此外,the API Specification is available for download,因此无需始终访问网络以获取信息。

由于文档只是网页,使用浏览器的查找功能可以在页面中快速查找信息,如果失败,使用Google或您最喜欢的搜索引擎查找文档非常快速和简单。

Google(或您最喜欢的搜索引擎)是您的朋友。

需要有关StringBuilder课程的信息吗?请尝试以下查询:

stringbuilder java 6

第一个结果将是StringBuilder类的Java API Specification页面。提示是在查询结尾附加字符串“java 6”,这似乎使API规范在最顶层。

熟悉API规范的结构。

Javadoc工具的表示结构非常好且符合逻辑:

+-----------+-------------------+
|           |                   |
|  Packages |                   |
|           |                   |
+-----------+      Details      |
|           |                   |
|  Classes  |                   |
|           |                   |
+-----------+-------------------+

Javadoc被划分为三个框架。

  • 左上角框架:列出Java平台API的所有软件包。
  • 左下框:列出所选包中的所有类。
  • 右框架:当前所选包或类的详细信息。

通常,从左上角框架中选择一个包,然后在左下角框架中查找该类,最后浏览右侧框架中的详细信息,首先查找一个类。这个想法是:

Package -> Class -> Details

类和包的右侧框架中的细节也非常有条理。对于类,结构如下:

  • 班级名称
  • 继承层次结构
  • 已实施接口
  • 相关课程
  • 课程的信息和描述;用法示例。
  • 字段摘要
  • 构造函数摘要
  • 方法摘要
  • 字段/构造函数/方法详细信息。

当我正在寻找有关方法的信息时,我将向下滚动到方法摘要,找到我想要的方法,然后单击将跳转到方法详细信息的方法名称。

此外,关于该类的所有内容都记录在一个页面中 - 它似乎对于一个页面来说信息太多,但它确实可以让您从一个位置轻松获取有关该类所需的所有信息。在其他文档格式中,可能需要在多个页面之间切换以获取有关同一类中的多个方法的信息。使用Javadoc格式,它只在一个页面中。

了解Java Platform API

下一步是学习Java Platform API的重要包。这有助于从平台API中的大量类中快速查找类。

别担心,慢慢来 - 你不需要一次学习所有东西!

一些感兴趣的包裹是:

  • java.lang - 包含StringSystemInteger等类以及其他自动导入的类每个Java程序。

  • java.util - 包含Java集合(例如ListSetMap及其实现),{ {1}},Date和其他功利阶级。这可能是第一个用于查找对执行常见操作有用的类的包。

  • Random - 与输入和输出相关的类,例如java.ioFileReader s和各种Writer s。

  • Stream java.awt - 对于图形用户界面,Java使用Abstract Window Toolkit或Swing,以及这两个包用于处理Java中的GUI。

了解课程的位置并开始了解在大量文档中查看的位置将使查找信息变得更加容易。它可能需要一段时间才能适应它,但是一旦你掌握它,它应该会更容易,你将能够自己找到这些信息。

祝你好运!

答案 1 :(得分:2)

它取决于你的意思。例如。如果你想知道一个确切的类的位置,比如“又有什么BufferedReader?”,我会在Google上搜索:

site:java.sun.com BufferedReader

如果您想知道如何完成任务,例如“如何在不回应的情况下从终端读取密码?” (java.io.Console),有时你只能通过征求意见才能弄明白。

答案 2 :(得分:2)

大多数时候,如果它是语言的核心(不是第三方库),我使用以下链接:

http://java.sun.com/javase/6/docs/api/allclasses-frame.html

列出Java SE中的所有类。

要知道班级是否有效我尝试按Ctrl-F并猜测哪个班级是合适的。

最终,随着时间的推移,当你习惯上课时,搜索会更容易。

例如,假设您要使用数组:

Ctrl + F数组产生:

Array 
Array 
ArrayBlockingQueue 
ArrayDeque 
ArrayIndexOutOfBoundsException 
ArrayList 
Arrays 
ArrayStoreException 
ArrayType 
ArrayType 

我点击每一个并查看文档。其中一些毫无意义,其中一些正是我所需要的。

有时它可能不会非常直接。让我们看看如何创建一个Window:

Ctrl + F不显示JFrame,这是正确的答案,但这只是调整你的感觉的问题:)

我希望这会有所帮助。

答案 3 :(得分:1)

  • 您在寻找Java库吗?尝试谷歌搜索,例如database connection pool java
  • 您是否正在寻找核心Java库中的类?安装IDE并查找类,例如在Eclipse中尝试Ctrl-Shift-T并输入名称: LinkedList 。请注意,在Eclipse中,您还可以使用通配符(例如 * List )来获取名称以List结尾的所有类;
  • 在包中寻找特定的类?尝试Sonatype's Maven repository,点击高级搜索,然后在新的下拉列表中选择班级名称。

答案 4 :(得分:1)

我会推荐一本像Java In A Nutshell这样的书,它是Java SE API的绝佳参考(请注意它只涵盖Java 5,但对大多数需求来说应该没问题)

答案 5 :(得分:1)

Java教程http://java.sun.com/docs/books/tutorial/和Java API http://java.sun.com/javase/6/docs/api/是了解如何执行某些操作以及使用哪些类的基本资源。

答案 6 :(得分:1)

我喜欢使用DocJar

甚至还有一个日食插件,但我还没有尝试过。

http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=959

答案 7 :(得分:0)

我同意教程很好,搜索引擎一般都很棒(但现在它们都会引导你回到SO)。除了论坛,一个不容错过的资源是你周围的程序员。如果您是开发团队或班级的一员,您可以获得所需的答案,或者您可以在搜索上进行协作。如果你不确定你是否理解你正在寻找什么,那么人们通常会更容易帮助你。