3 回答
TA贡献1744条经验 获得超4个赞
一种方式是,按照惯例,Java 开发人员使用他们的 API 发布 Javadoc。有时在同一个 jar 文件中,但通常在从同一个地方下载的具有相似名称的单独文件中。
如果您没有 Javadoc,则可以通过反射找到库的公共接口:想想 C++ RTTI 的强项,每个公共类名、每个公共方法名及其签名,包括其参数的名称,都是可见的并且可以在运行时和设计时以编程方式检索。IDE 是帮助您解决此问题的好工具;它使用反射来告诉您可用的类,并在您打开方法名称后的括号时立即向您显示方法的签名。
TA贡献1806条经验 获得超5个赞
简单地说:你不能。
没有适用于 Java 的通用规则如何准确地做到这一点。当然,您可以查看实际的interface
java 类,也可以搜索公共类及其公共方法。但是没有一个“中心”的地方必须汇集这些信息。
尽管如此,使用最近的 Java,您将定义清晰的模块,并编写良好的 Javadoc 注释来描述您的包以及如何使用它们。
换句话说:有一些概念可以帮助Java开发人员描述“这是一个供外部使用的接口,这里是如何使用该接口的信息”。但是你如何做到这一点是你的选择。
从这个角度来看,它与 C++ 非常相似。当头文件中的内容没有以合理的方式编写时,将头文件和 cpp 源文件分开对您没有帮助。
最后:真正的答案可能是:您依赖于您的 IDE。当我想找到接口的用法或实现时,我会去问我的 IDE,它知道我的项目并且可以向我展示这些东西。
TA贡献1831条经验 获得超10个赞
在 java 中,您可以使用publicjar 文件中定义的所有类。
在类中,您可以调用所有公共方法。
您可以使用其他两个可见性级别,受保护的可见性和默认可见性(没有任何可见性关键字),可以在一些限制下使用。
这是一个完整的可见性表(从另一个答案复制):
│ Class │ Package │ Subclass │ Subclass │ World
│ │ │(same pkg)│(diff pkg)│
────────────┼───────┼─────────┼──────────┼──────────┼────────
public │ + │ + │ + │ + │ +
────────────┼───────┼─────────┼──────────┼──────────┼────────
protected │ + │ + │ + │ + │ -
────────────┼───────┼─────────┼──────────┼──────────┼────────
<default> │ + │ + │ + │ - │ -
────────────┼───────┼─────────┼──────────┼──────────┼────────
private │ + │ - │ - │ - │ -
+ : accessible - : not accessible
这是列的定义:
类 - 同一个类(这不是您的情况,因为您使用的是由外部库定义的类)
包 - 在您需要访问的类的同一包中定义的任何类
子类(同一个包) - 任何作为您需要访问并在同一个包中定义的类的子类的类
子类(不同的包)- 作为您需要访问并在不同包中定义的类的子类的任何类
World - 任何其他类(不是同一个包,也不是子类)
添加回答
举报