【package】java
<1>爲了解決類的命名衝突問題,Java引入包(package)機制,提供類的多重類命名空間。app
<2>package做爲源文件的第一條語句(缺省時指定爲無名包),包的命名規範爲:公司域名倒置.自定義包spa
<3>Java編譯器把包對應於文件系統的目錄管理,在package語句中,用'.'來指明包(目錄)的層次,例如:rem
package com.nato;編譯器
則該文件中全部的類位於\com\nato目錄下域名
【注意】it
<1>必須保證該類的class文件位於正確目錄下io
<2>必須保證class文件的最上層包(即com文件夾)的父目錄位於classpath下(com文件夾父目錄位於系統變量classpath下)編譯
<3>執行一個類須要寫全包名class
注:任何類找不到的問題,就須要設置classpath。
【Exception】
<1>Please remove or make sure it appears in the correct subdirectory of the classpath.
[請確認類是否在classpath的正確子目錄下]
在這裏應該在當前project目錄下,新建文件夾com,而後在新建文件夾nato,再把目標文件放到這個目錄下,這樣才能與包
對應。
<2>cannot resolve symbol
[不能解析該符號]
未引入包;固然也能夠寫成com.nato.A a = new com.nato.A();
【import】
<1>若是將一個類打包,則使用該類時,必須使用該類的全名,這樣Java編譯器纔會找到該類。
<2>能夠不使用import語句直接使用java.lang包中的類。
【J2SDK】
查看JDK的文件夾:jre--lib--rt.jar--右擊以壓縮文件形式打開(WinRAR)--各類包
【打包】
定位到正確目錄--jar--顯示提示指令--jar -cvf com.nato *.*
--cvf(-c創建新的存檔,-v生成詳細輸出到標準輸出上,-f指定存檔文件名)
--com.nato是想要生成的jar文件名稱
--*.*(把當前目錄和其子目錄一塊兒打包)
能夠把本身打包好的文件放到classpath中,這樣就能直接加載裏面的類了。