JAVA-miでソースコードの分割(Package利用)実行してつまずきやすい処

More than 3 years have passed since last update.

▪️test22.java

package calcapp.main;

public class test22 {
public static void main(String[] args) {
int a = 10; int b = 2;
int total = calcapp.logics.test23.tasu(a, b);
int delta = calcapp.logics.test23.hiku(a, b);
System.out.println("足すと" + total + "、引くと" + delta);
}
}

▪️test23.java

package calcapp.logics;

public class test23 {
public static int tasu(int a, int b) {
return (a + b);
}

public static int hiku(int a, int b) {
return (a - b);
}
}

▪️miでのpackage利用の注意点

package を書かないとちゃんと実行しますよね。

packege を書いたら、その階層でディレクトリを作成してその中に入れて下さい。

そうしないとうまく動作しません。

この場合は、

mkdir -p calcapp/main

mv test22.java calcapp/main/.

mkdir -p calcapp/logics

mv test23.java calcapp/logics/.

javac calcapp/logics/test23.java

javac calcapp/main/test22.java

java calcapp/main/test22

こんな感じで使います。

calcapp/main

は、

calcapp.main

という意味です。

java のソース上では、. は、階層の下という意味に解釈されます。

そのまま . という名前の一部にはできません。

java calcapp/main/test22は

java calcapp.main.test22でも実行できます。

▪️実行結果

足すと12、引くと8

スクリーンショット 2015-10-20 17.19.29.png