LoginSignup
1

More than 5 years have passed since last update.

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

Last updated at Posted at 2015-10-20

▪️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

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1