Java包及訪問權限,掃盲貼


當一個大型程序由數個不同的組別或人員開發共同開發時,用到相同的類名稱是很有可能的事。如果這種情況發生,還要確保程序可以正確運行,就必須通過package關鍵字來幫忙了。package是在使用多個類或接口時,為了避免名稱重復而采用的一種措施。那么具體應該怎么使用呢?在類或接口的最上面一行加上package的聲明就可以了。

package的聲明格式:package package名稱; 

經過package的聲明之后,在同一文件內的接口或類都被納入相同的package中。程序TestPackage1是使用package的一個范例,如下所示:

package demo.java;

class Person
{
    public String talk()
    {
        return "Person---->>talk()";
    }
}

class TestPackage1
{
    public static void main(String args[])
    {
        System.out.println(new Person().talk());
    }
}

第1行聲明了一個demo.java的包,所以就相當於將Person類、TestPackage1類放入了demo.java文件夾之下。現在來看一下上面的程序是如何編譯的:

javac -d . TestPackage1.java  注:“-d” 表示生成目錄;“.” 表示在當前目錄下生成

這樣就會在當前目錄下生成一個demo的文件夾,在demo文件夾下又會生成一個java文件夾,在此文件夾下會有編譯好的Person.class和TestPackage1.class,編譯好之后用下面的語法來執行它:

java demo.java.TestPackage1

如果要使用不同包中的類,可以像上面“demo.java.TestPackage1”一樣,指明包名加類名,或者可以使用import命令。import可以將某個包中的類或者整個包導入,因此之后使用此包中的類時就不再需要加上包名。注意,某個包中的類要能被訪問,必須設置為public。

以下列出JDK中常見的包:

  1. java.lang — 包含一些Java語言的核心類,如String、Math、Integer、System和Thread,提供常用功能。在java.lang包中還有一個子包:java.lang.reflect用於實現java類的反射機制。
  2. java.awt — 包含了構成抽象窗口工具集(abstract window toolkits)的多個類,這些類被用來構建和管理應用程序的圖形用戶界面(GUI)。
  3. javax.swing — 此包用於建立圖形用戶界面,此包中的組件相對於java.awt包而言是輕量級組件。
  4. java.applet — 包含applet運行所需的一些類。
  5. java.net — 包含執行與網絡相關的操作的類。
  6. java.io — 包含能提供多種輸入/輸出功能的類。
  7. java.util — 包含一些實用工具類,如定義系統特性、與日期日歷相關的函數。

以下列出Java類成員的訪問控制權限:


免責聲明!

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



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