@634

パッケージ(package) - 他パッケージの利用

Advertisement

解説

同じパッケージに属するクラスは意識しなくても使用することができるが、異なるパッケージに属しているクラスを使用する時は、完全限定名でクラスを使用するか、またはimportキーワードを使用して、パッケージをインポートする必要がある。
class Sample{
    public static void main(String args[]){
        Table table = new Table();
    }
}

C:\>javac Sample.java
Sample.java:3: シンボルを解決できません。
シンボル: クラス Table
場所    : Sample の クラス
        Table table = new Table();
        ^
Sample.java:3: シンボルを解決できません。
シンボル: クラス Table
場所    : Sample の クラス
        Table table = new Table();
                          ^
エラー 2 個

完全限定名

パッケージ分割している場合、クラスは「パッケージ階層+クラス名」で一意になる。この一意に決まる「パッケージ階層+クラス名」を完全限定名という。

サンプルコード
class Sample{
    public static void main(String args[]){
        com.ayumu-baby.634.furniture.Table table
          = new com.ayumu-baby.634.furniture.Table();
    }
}

パッケージインポート(import)

クラスを参照するたびに完全限定名での指定を行っていると、構文が無駄に長くなってしまい、可読性の低下など、悪影響が発生する。

この冗長さを取り除くために、importキーワードを使用してパッケージをインポートすることにより、クラス名での指定が可能となる。importキーワードはクラス宣言より前に記述する

書式
import パッケージ.クラス名
または
import パッケージ.*

サンプルコード
import com.ayumu-baby.634.furniture.Table;

class Sample{
    public static void main(String args[]){
        Table table = new Table();
    }
}

Advertisement

ショートカット

634
このカテゴリのトップページに戻る
634labs
   UIコレクションギャラリー

サイト検索

Google

Web サイト内

Y!ログール