为了账号安全,请及时绑定邮箱和手机立即绑定

用 Java 声明的库的 API 在哪里?

用 Java 声明的库的 API 在哪里?

墨色风雨 2022-11-10 15:05:51
在 C/C++ 中,库的 API 在头文件中声明。我可以查看头文件以了解库提供了哪些函数和类型。但是Java没有使用头文件的概念。它用什么代替?我在哪里可以看到 Java 库的接口声明?
查看完整描述

3 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

一种方式是,按照惯例,Java 开发人员使用他们的 API 发布 Javadoc。有时在同一个 jar 文件中,但通常在从同一个地方下载的具有相似名称的单独文件中。

如果您没有 Javadoc,则可以通过反射找到库的公共接口:想想 C++ RTTI 的强项,每个公共类名、每个公共方法名及其签名,包括其参数的名称,都是可见的并且可以在运行时和设计时以编程方式检索。IDE 是帮助您解决此问题的好工具;它使用反射来告诉您可用的类,并在您打开方法名称后的括号时立即向您显示方法的签名。


查看完整回答
反对 回复 2022-11-10
?
忽然笑

TA贡献1806条经验 获得超5个赞

简单地说:你不能。

没有适用于 Java 的通用规则如何准确地做到这一点。当然,您可以查看实际的interfacejava 类,也可以搜索公共类及其公共方法。但是没有一个“中心”的地方必须汇集这些信息。

尽管如此,使用最近的 Java,您将定义清晰的模块,并编写良好的 Javadoc 注释来描述您的包以及如何使用它们。

换句话说:有一些概念可以帮助Java开发人员描述“这是一个供外部使用的接口,这里是如何使用该接口的信息”。但是你如何做到这一点是你的选择。

从这个角度来看,它与 C++ 非常相似。当头文件中的内容没有以合理的方式编写时,将头文件和 cpp 源文件分开对您没有帮助。

最后:真正的答案可能是:您依赖于您的 IDE。当我想找到接口的用法或实现时,我会去问我的 IDE,它知道我的项目并且可以向我展示这些东西。


查看完整回答
反对 回复 2022-11-10
?
慕哥6287543

TA贡献1831条经验 获得超10个赞

在 java 中,您可以使用publicjar 文件中定义的所有类。


在类中,您可以调用所有公共方法。


您可以使用其他两个可见性级别,受保护的可见性和默认可见性(没有任何可见性关键字),可以在一些限制下使用。


这是一个完整的可见性表(从另一个答案复制):


            │ Class │ Package │ Subclass │ Subclass │ World

            │       │         │(same pkg)│(diff pkg)│ 

────────────┼───────┼─────────┼──────────┼──────────┼────────

public      │   +   │    +    │    +     │     +    │   +     

────────────┼───────┼─────────┼──────────┼──────────┼────────

protected   │   +   │    +    │    +     │     +    │   -         

────────────┼───────┼─────────┼──────────┼──────────┼────────

<default>   │   +   │    +    │    +     │     -    │   - 

────────────┼───────┼─────────┼──────────┼──────────┼────────

private     │   +   │    -    │    -     │     -    │   - 


 + : accessible         - : not accessible

这是列的定义:

  • 类 - 同一个类(这不是您的情况,因为您使用的是由外部库定义的类)

  • 包 - 在您需要访问的类的同一包中定义的任何类

  • 子类(同一个包) - 任何作为您需要访问并在同一个包中定义的类的子类的类

  • 子类(不同的包)- 作为您需要访问并在不同包中定义的类的子类的任何类

  • World - 任何其他类(不是同一个包,也不是子类)


查看完整回答
反对 回复 2022-11-10
  • 3 回答
  • 0 关注
  • 120 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信