*パッケージ [#xf71af60]
クラスやインターフェイスの集まりです。

#codeprettify{{
package packageName
}}
packageNameはパッケージ名です

''例''
#codeprettify{{
packege test;
}}

階層構造にすることも可能です。

#codeprettify{{
packege test.test2.test3
}}

この場合、これと同じ構造のディレクトリ構成でないといけません。

''PackageDemo.java''
#codeprettify{{
package p;

class PackageDemo{
    public static void main(String args[]){
		A a = new A();
		a.a1();
		B b = new B();
		b.b1();
		C c = new C();
		c.c1();
    }
}
}}

''A.java''
#codeprettify{{
package p;

class A{
    void a1(){
        System.out.println("a1");
    }
}
}}

''B.java''
#codeprettify{{
package p;

class B{
    void b1(){
	System.out.println("b1");
    }
}
}}

''C.java''
#codeprettify{{
package p;

class C
{
    void c1()
    {
	System.out.println("c1");
    }
}
}}


上記のファイルは\pに入っているとします。~
構成はこんなカンジね~

ドライブ?
 ドライブ?
 |
 |
 |
 |
 +----\..(\pの親ディレクトリ)
 |    |
 |    |
 ・    +----\p
 ・    |    |- PackageDemo.java
 ・    |    |- A.java
       |    |- B.java
       |    |- C.java
       ・
       ・
       ・

コンパイルは\pの親ディレクトリ(\pより一つ上)に移り、

#codeprettify{{
javac p\*.java
}}

と行います。
実行は
#codeprettify{{
java p.PackageDemo
}}
とします。こちらも親ディレクトリ(\pより一つ上)から実行です。~

こういう使い方をすると便利っぽい~
extendsを使うことでわずらわしいメソッドを使うときのクラスの指定を
行わなくてすむ~
ただ、わかりづらくなるかも・・・

''Packa.java''
#codeprettify{{
import B.*;
import C.*;

class Pack extends c{
    public static void main(String args[])  {
        //通常(?)例
        b b1 = new b();
        bb bb1 = new bb();
        b1.commentout();
        bb1.commentout();
        //便利例
        commentoutC();      //extendsされてるのでクラスの指定は省略できる
        commentoutC2();     //こちらはCクラスにextendsされているのでクラスの指定は省略できる
    }
}
}}

''B\b.java''
#codeprettify{{
package B;

public class b{
    public static void commentout(){
        System.out.println("こちらはBパッケージです");
    }
}
}}

''B\bb.java''
#codeprettify{{
package B;

public class bb{
    public static void commentout(){
        System.out.println("こちらはBパッケージのbbです");
    }
}
}}

''C\c.java''
#codeprettify{{
package C;
public class c extends c2{
    public static void commentoutC(){
        System.out.println("こちらはextendsされたCパッケージのCです");
    }
}
}}

''C\c2.java''
#codeprettify{{
package C;
public class c2{
    public static void commentoutC2(){
        System.out.println("こちらはc classにextendsされたCパッケージのC2です");
    }
}
}}

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS