在C / C ++中,库的API在头文件中声明。我可以查看头文件以了解库提供的功能和类型。但是Java不使用头文件的概念。它用什么代替呢?在哪里可以看到Java库的接口声明?
答案 0 :(得分:1)
简单地说:您不能。
没有完全适用于Java how 的通用规则。当然,您可以检出实际的interface
Java类,并且可以搜索公共类及其公共方法。但是,没有这样的信息必须聚集的“中心”位置。
尽管如此,在最近的Java中,您将定义清晰的模块,并编写良好的Javadoc注释来描述您的软件包以及如何使用它们。
换句话说:java开发人员可以使用某些概念来描述“这是供外部使用的接口,这是有关如何使用该接口的信息”。但是,您究竟要怎么做才是您的选择。
从这个角度来看,它与C ++非常相似。当头文件中的内容没有以合理的方式编写时,将头文件和cpp源文件分开是没有帮助的。
最后:真正的答案可能是:您依赖IDE。当我想查找接口的用法或实现时,我去询问我的IDE,它知道我的项目并可以向我展示这些东西。
答案 1 :(得分:1)
在Java中,您可以使用jar文件中定义的所有public
类。
在类内部,您可以调用所有公共方法。
这是您可以使用的另外两个可见性级别,受保护的可见性级别和默认可见性(没有任何可见性关键字),可以使用一些限制。
以下是完整的可见性表(从this other answer复制):
│ Class │ Package │ Subclass │ Subclass │ World
│ │ │(same pkg)│(diff pkg)│
────────────┼───────┼─────────┼──────────┼──────────┼────────
public │ + │ + │ + │ + │ +
────────────┼───────┼─────────┼──────────┼──────────┼────────
protected │ + │ + │ + │ + │ -
────────────┼───────┼─────────┼──────────┼──────────┼────────
<default> │ + │ + │ + │ - │ -
────────────┼───────┼─────────┼──────────┼──────────┼────────
private │ + │ - │ - │ - │ -
+ : accessible - : not accessible
这是列的定义:
答案 2 :(得分:1)
一种方式是,按照惯例,Java开发人员会使用其API发布Javadoc。有时在同一个jar文件中,但通常是在一个单独的同名文件中,该文件是从同一位置下载的。
如果没有Javadoc,则可以通过反射找到库的公共接口:在类固醇上考虑C ++ RTTI,其中每个公共类名,每个公共方法名及其签名(包括其参数名)可见,并且可以在运行时和设计时以编程方式进行检索。 IDE是帮助您完成此任务的好工具。它使用反射来告诉您可用的类,并在方法名称后打开括号后立即向您显示方法的签名。