- 包是什么?
- 包的作用
- 匯入包中的類
- 自定義包
- 包的訪問權限控制
包是什么?
在開發程序中,會定義很多類,隨著類越寫越多,難免會出現類重名而發生覆寫的情況,為了在使用它們的時候不讓編譯器混淆,我們給類加上一個限定 (前綴),把所有java程式保存在各自的目錄里面,而該目錄就是包,包的本質實際上就是一個檔案夾
即:把它們放在不同的包里面,呼叫時再加上前綴即可;這樣好處是對同名的類進行了區分;能精確指出我們需要的哪一個;讓同名的類在一個程式中可以共存
在Java中,包是對類、介面等的封裝機制的體現,是一種對類或介面等的很好的組織方式
包的作用
在同一個工程中允許存在相同名稱的類,只要處在不同的包中即可
避免了型別之間命名沖突:包作為一種封裝,給類提供多層命名空間
匯入包中的類
以匯入時間戳為例:
方法1 使用類的全路徑
public class PackageTest {
public static void main(String[] args) {
java.util.Date time = new java.util.Date();
System.out.println(time.getTime());
java.util.Date time2 = new java.util.Date();
System.out.println(time2.getTime());
}
}
優點:一定不會發生沖突
缺點:使用麻煩,每 new 一個物件都需要
方法2 匯入包
可直接使用 import java.util.*,匯入util 里的所有類
import java.util.Date;
public class PackageTest {
public static void main(String[] args) {
Date time3 = new Date();
System.out.println(time3.getTime());
Date time4 = new Date();
System.out.println(time4.getTime());
}
}
舉例:

上述示例:不明確 Date 到底是 sql 中的類,還是 util 中的類
解決方法:使用方式一包的全路徑即可~
優點:使用方便
缺點:可能會產生沖突
方法3 靜態匯入包
類里若存在同名的靜態方法,也有可能會發生沖突、
//可以直接使用Math類中的所有靜態成員
import static java.lang.Math.*;
public class PackageTest {
public static void main(String[] args) {
System.out.println(sqrt(100));
System.out.println(max(1,5));
System.out.println(min(6,7));
}
}
總結:一個完整類名是包名+類名,在沒有 import 匯入的情況下,使用一個類需要給出完整的類名
自定義包
操作步驟:
1.在 IDEA 中先新建一個包:右鍵 src → 新建 → 包


2.右鍵剛創建好的包→新建→類

輸入類名即可

3.找到相應目錄 查看是否創建成功

4. Test.java 檔案的最上方,出現了一個 package 陳述句

包的訪問權限控制
不同包

若手動匯入 Person 所在的包


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/300626.html
標籤:java
上一篇:Nginx常見問題
