java中的import和package機制


最近學了點java基礎,在遇到import和package部分時看了幾遍視頻,還是有點糊塗,今天親自做了一下實驗,恍然大悟,下面分享給大家:

java的package的作用類似於c++的namespace的作用,防止名字相同的類產生沖突,這不是我們想要的。看一下package的使用。

我在路徑為E:\java\testpackage\下寫一個cat.java文件如下:

package com.cxue;
public class Cat {


}

編譯通過下面我們在相同的目錄下寫一個Dog類來掉用Cat類如下:

public class Dog {
  public static void main(String[] args) {
  
    Cat c = new Cat();
  }
    
}

我們編譯出現了下面的錯誤:

雖然我們把兩個類放到了一起但不能直接訪問了,為什么呢,就像兩個不錯的哥們,之前沒有package的時候相當於”默認是可以在一起混的“,要打算用他的東西,直接用new做一個就行了,用了package就不一樣了,打上標簽,就像我們現實生活中畢業了,各分兩地,再沒有任何通信方式的情況下我們只能去他指定的城市去找他(盡管我們在一個城市,因為我們“沒有聯系”不知道,就像我們現在這種情況在一個相同的文件夾下,即使在一起),告訴他我要用一下你的某些東西,我們才能new制作一個才行呀。

看樣子我只能給放到標簽的位置(當前目錄com下cxue里),我們在進行編譯

還是出了問題,這是因為我們在使用Cat類時還采用原來的方式,打上標簽了就要換種方式,就像我要找到哥們必須要比之前在一起時費點事,我改變為下面的方式:

public class Dog {
  public static void main(String[] args) {
  
    com.cxue.Cat c = new com.cxue.Cat();
  }
    
}

編譯通過如下:

但這樣太麻煩了,不如我們提前告訴人家一聲,以后就直接用,順其自然import排上用場了。

再次修改代碼如下:

import com.cxue.*;
public class Dog {
  public static void main(String[] args) {
  
    Cat c = new Cat();
  }
    
}

編譯通過。

完畢:

 

 


免責聲明!

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



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