Java package和import語句

Java中的package和import語句


  • 若是你想讓其餘人訪問你的類,你必定要把你寫的類放到正確的子目錄下。
  • 在Java裏,對於位於包中的類是這樣管理的:
  • Java編譯器把包對應於文件系統的目錄管理,package語句中用 "."來指明包(目錄)的層次。好比:
package com.sxt;
    //該文件中全部的類位於.\com\sxt目錄下
  • 兩個小程序來驗證這個過程
//先定義一個類Cat
package com.bjsxt.java140;

public class Cat
{
    
}
  • 如今咱們新建一個類用來使用這個Cat類
public class Dog
{
    public static void main(String args[])
    {
        Cat c = new Cat();
    }
}
  • 在編譯Dog.java時會發現:若是Cat.class不在規定的目錄下。編譯器會報錯:確認Cat這個累是否在正確的目錄下。
  • 咱們把Cat.class放到package語句規定的目錄下:編譯器仍是會報相同的錯誤,由於從JDK1.5以後有可能Cat的源文件也會產生影響,咱們把Cat.java刪掉。
  • 刪掉源文件以後咱們再次編譯:編譯器仍是會報錯:不能解析Cat這個符號。由於咱們語句中寫的是Cat c = new Cat();java

  • 這表明Cat是一個裸體類,咱們要把他的名字寫全:com.bjsxt.java140.Cat c = new com.bjsxt.java140.Cat;
  • 這樣子就能夠經過編譯啦!
  • 總結一下:package寫在第一句,編譯出來的class文件必須在正確的目錄下(和包的層次徹底一致),在另一個文件中使用時名字要寫全。
  • 可是話說回來:咱們每次使用Cat這個類時都要寫那麼長一句話會不會很繁瑣?
  • 解決方法:咱們能夠在程序開始前用import語句來引入這個類小程序

import com.bjsxt.java140.Cat;    //引入以前寫過的Cat類
public class Dog
{
    public static void main(String args[])
    {
        Cat c = new Cat();       //編譯器就會認識這個類啦
    }
}
  • 還能夠寫成
import com.bjsxt.java140.*;     //表明把這個目錄下的類所有引入
相關文章
相關標籤/搜索