Java中的package-info.java作用
阿新 • • 發佈:2019-02-12
前言
之前在Eclipse中,總是會不小心勾選到這個複選框,之前並沒有怎麼在意這個java檔案,畢竟生成之後只有以下這麼點內容。
而且你也不能直接建立package-info檔案,因為編輯器會報 Type name is not valid
錯誤,類名無效。我也嘗試在上述生成的 package-info.java
檔案中定義一個class,由於Java變數定義的規範是由字母、數字、下劃線和 $
符號組成且首字母不為數字,不允許有 -
, 所以這個顯然是行不通的。
所以我就很納悶,這東西到底有什麼作用?
作用
查看了一些資料,總結下,大概的情況就是 package-info.java
package-info.java
檔案中的 package com.bigsea.test
,與此同時,這個 package-info.java
也必須位於 com.bigsea.test
包中。
包文件
軟體包的描述和其他相關文件可以寫在 package-info.java
檔案中,並用於生成 Javadocs
(關於如何生成 Javadocs
請自行谷歌或者百度,這裡不做介紹)。
我這裡做個示例。
包註釋
package-info.java
檔案包含包級別的註釋。如以下圖示。
我這裡也同樣的舉個例子。
以我的工具包作為示例。比如你想棄用一個包中的所有型別。你可以通過使用
@Deprecated
註解每個單獨的型別,或者,你可以在 package-info.java
中的 package
宣告上使用 @Deprecated
。 在
com.bigsea.test
中新建一個 Test
類測試下。看到如下的結果。 也就是說,你在
package-info.java
中的 package
宣告上使用 @Deprecated
,這樣一來相當於貶低了對應包中的所有對應的類、介面、列舉等。