java中的Package語句和import語句


在實際項目中會有成百上千個類,我們把近似的類放在同一個包里面,比如把實體類放在實體類包里面
 

package 為解決類的 命名沖突問題而引入的機制。

    package語句作為Java源文件的第一條語句。(若缺省該語句,則指定為無名包。) 約定俗成的給包起名為把公司域名倒過來寫,如com.sun Java編譯器把包對應於文件系統的目錄管理,package語句中,用‘.’來指明包(目錄)的層次,例如package com.sun;則該文件中所有的類位於.\com\sun目錄下。

總結:

  1.如果你要把一個類放在包下面,第一句寫package,你編譯出來的類必須位於正確的目錄下面。

     該類的源碼可能會產生影響(解決辦法:刪除或轉移到別的目錄)

  2.如果想在另一個類里面引用包里面的類,要把名字寫全。(相當用文件的絕對路徑訪問)或者用import導入,但位於同一個包中的類不需要引入

  3.必須class文件的最上層包中的父目錄位於classpath下面。

  4.編譯后,執行一個類的時候也需要把包名寫全,不然無法執行。


J2SDK中主要的包介紹(在jdk5.0/jre/lib/rt.jar里面,可用解壓軟件解開查看)

  Java.lang-包含一些Java語言的核心類,如String、Math、Integer、System和Thread,提供常用功能

  Java.awt-包含了構成抽象窗口工具集(abstract window toolkits)的多個類,這些類被用來構建和管理應用程序的圖形用戶界面(GUI)。

  Java.applet-包含applet運行所需的一些類

  Java.net-包含執行與網絡相關的操作的類

  Java.io-包含能提供多種輸入/輸出功能的類

  Java.util-包含一些實用工具類,如定義系統特性、使用與日期日歷相關的函數

  其中就Java.lang包不用引入就能直接使用,其他包里面的類都要用import引入才能使用。

 

如何打包?

  先定位到classpath設置的目錄下 jar -cvf xx.jar *.* -c 創建新的文檔 -v 生成詳細輸出到詳細輸出上 -f 指定存檔文件名 即把classpath下的所有文件打包成xx.jar文件 如何使用呢? 把xx.jar的絕對路徑放到classpath下面,這樣就可能正常訪問了
eg.

在一個文件中

  package com.sun;

  public class Cat {

  }

在另一個文件中

  //import com.sun.*;

  public class T {

    public static void main(String[] args){

      com.sun.Cat c = new com.sun.Cat(); 

     }

  }

  1.把第一個文件編譯生成的.class文件放到com.sun目錄下,然后就可編譯執行T.java了,其中Cat類必須為public

  2.第一個文件不變,修改二個文件成如下:

  import com.sun.Cat;

  public class T {

     public static void main(String[] args) {

       //com.sun.Cat c = new com.sun.Cat();

       Cat c = new Cat();

     }

   }

  同樣可以達到目的。但是有點小問題,就是import com.sun.*;應該可以代替import com.sun.Cat;但在調試過程中卻會報錯。

  但是如果兩上文件不在同一文件目錄下,這時上面的程序就會報錯。為此我們需要為此設置環境變量“classpath”,在里面添加路徑,即com.sun的最上層目錄的上一級目錄,即存放com文件夾的目錄名。這樣程序就會從這里開始尋找需要的類。

  一個文件中可以同時有package和import存在,但在執行時要注意java 后面跟的文件名要寫全。

 

 

Java環境變量的配置及意義


免責聲明!

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



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