package-info.java文件詳解


歡迎關注我的社交賬號:

博客園地址: http://www.cnblogs.com/jiangxinnju/p/4781259.html
GitHub地址: https://github.com/jiangxincode
知乎地址: https://www.zhihu.com/people/jiangxinnju

pacakge-info.java介紹

pacakge-info.java是一個Java文件,可以添加到任何的Java源碼包中。pacakge-info.java的目標是提供一個包級的文檔說明或者是包級的注釋。

pacakge-info.java文件中,唯一要求包含的內容是包的聲明語句,比如:

package edu.jiangxin.tools;

包文檔

在Java 5之前,包級的文檔是package.html,是通過JavaDoc生成的。而在Java 5以上版本,包的描述以及相關的文檔都可以寫入pacakge-info.java文件,它也用於JavaDoc的生成。比如:

    /**
     * 常用工具包<br>
     * @author Jiangxin
     * @version 1.0
     *
     */
    package edu.jiangxin.tools;

上面的說明通過JavaDoc生成如下:

在添加package-info.java之后,部分IDE可以在代碼中進行提示,如下圖:

包注釋

注釋對於程序員來說非常重要,pacakge-info.java文件包含了包級的注釋。我們還可以使用ElementType來自定義注釋。

包注釋當然是ElementType.PACKAGE了,除此之外,還有:

    ElementType.TYPE (class, interface, enum) 
    ElementType.FIELD (instance variable) 
    ElementType.METHOD ElementType.PARAMETER 
    ElementType.CONSTRUCTOR 
    ElementType.LOCAL_VARIABLE 
    ElementType.ANNOTATION_TYPE

比如,想讓包中的所有類型過時(Deprecate),你可以注釋每一個單獨的類型(類、接口、枚舉等),如下所示:

    @DEPRECATED
    PUBLIC CLASS CONTACT {
    }

或者是可以在package-info.java包聲明文件中使用@Deprecated注釋,它可以讓包中的一切均過時。

    @Deprecated
    package edu.jiangxin.tools;

把package-info.java添加到包中

可以手動在包目錄下創建package-info.java文件,也可以通過Eclipse工具實現這一點。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM