亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用 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 關注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號