Java語言基礎21--包和import語句


一、包

包語句

通過關鍵字package聲明包語句。
        package語句作為Java源文件的第一條語句,為該源文件中聲明的類指定包名。
 package語句的一般格式為:
     package 包名; 
例如:
    package sunrise;
          package sun.com.cn; 

 

有包名的類的存儲目錄

如果一個類有包名,那么就不能在任意位置存放它,否則虛擬機將無法加載這樣的類。 
     程序如果使用了包語句,例如:package tom.jiafei;
 那么存儲文件的目錄結構中必須包含有如下的結構    
   …\tom\jiafei
 如:
  c:\1000\tom\jiafei
 並且要將源文件編譯得到的類的字節碼文件保存在目錄c:\1000\tom\jiafei中(源文件可以任意存放)。

 

運行有包名的主類

如果主類的包名是tom.jiafei,那么主類的字節碼一定存放在…\tom\jiefei目錄中,運行時必須到tom\jiefei的上一層(即tom的父目錄)目錄中去運行主類。
假設tom\jiefei的上一層目錄是1000,那么,必須如下格式來運行:
  C:\1000\java tom.jiafei.主類名 

 

二、import語句

引入類庫中的類

使用import語句可以引入包中的類。在編寫源文件的時候,除了自己編寫的類以外,經常需要使用Java提供的許多類,這些類可能在不同的包中。

在學習Java語言時,使用已經存在的類,避免一切從頭做起,這也是面向對象編程的一個重要方面。
為了能夠使用Java提供給我們的類,可以使用import語句引入包中類。

在一個Java源程序中可以有多個import語句,它們必須寫在package語句(假如有package語句的話)和源文件中類的定義之間。

Java為我們提供了大約130多個包,比如:
java.lang           包含所有的基本語言類
javax.swing       包含抽象窗口工具集中的圖形、文本、窗口GUI類
java.io               包含所有的輸入輸出類
java.util             包含實用類
java.sql             包含操作數據庫的類
java.nex            包含所有實現網絡功能的類
java.applet        包含所有實現Java applet的類

 

引入自定義包中的類

用戶程序可以使用tom.jiafei包中的類
如:import tom.jiafei.*;
        使用非類庫中有包名的類,也要使用import語句。

 

使用無包名的類

之前,我們在源文件中一直沒有使用包語句,因此各個源文件得到的類都沒有包名。

如果一個源文件中的類想使用無名包中的類,只要將這個無包名的類的字節碼和當前類保存在同一目錄中即可。

 

避免類名混淆

1.區分無包名和有包名的類
        如果一個源文件使用了一個無名包中的A類,同時又用import語句引入了某個有包名的同名的類,如tom.jiafei中的A類,就可能引起類名的混淆。 
2.區分有包名的類
       如果一個源文件引入了兩個包中同名的類,那么在使用該類時,不允許省略包名 。


免責聲明!

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



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