Java 基本の動き

Mainクラス

public class Main {
    public static void main(String[] args) {    //①
        Hoge moji = new Hoge();    //②
        moji.setMoji("ラーメン");    //③

        System.out.println(moji.getMoji());    //⑦
    }
}



Hogeクラス

public class Hoge{

    private String moji;    //⑥
                   ˜˜˜˜
    public void setMoji(String moji) {    //④
                               ¯¯¯¯
        this.moji = moji;    
             ˜˜˜˜   ¯¯¯¯
    }

    public String getMoji() {
        return moji;    //⑦
               ˜˜˜˜
    }
}



①実行するとMainクラスのmain()メソッドが動く。
②main()メソッドでHogeクラスをインスタンス化(new)する。
③変数mojiのsetMoji()メソッドにラーメンを引数とする。

HogeクラスのsetMoji(String moji)にラーメンが渡される。
⑤ラーメンが入っている変数mojiがthis.mojiに代入される。
this.mojiとフィールドのmojiが同じだからそれもラーメンということ。

⑦MainクラスのSystem.out.println(moji.getMoji());で変数moji(Hogeクラス)のgetMojiを呼び出しているため、 ラーメンが表示されることになる。




コンストラクタを作成する場合

Mainクラス

public class Main {
    public static void main(String[] args) {    //①
        Hoge moji = new Hoge("冷麺");    //②

        System.out.println(moji.getMoji());    //⑥
    }
}



Hogeクラス

public class Hoge{

    private String moji;    //⑤
                   ˜˜˜˜
    public Hoge(String moji) {    //③コンストラクタ
                       ¯¯¯¯
        this.moji = moji;    //④
             ˜˜˜˜   ¯¯¯¯
    }

    public String getMoji() {    //⑥
        return moji;    //⑥
               ˜˜˜˜
    }
}



①実行するとMainクラスのmain()メソッドが動く。
②main()メソッドでHogeクラスをインスタンス化(new)する。
冷麺を引数とする。

③コンストラクタのpublic Hoge(String moji)に冷麺が渡される。
④コンストラクタ冷麺が入っている変数mojiがthis.mojiに代入される。
⑤this.mojiとフィールドのmojiが同じだからそれもラーメンということ。

⑥MainクラスのSystem.out.println(moji.getMoji());で変数moji(Hogeクラス)のgetMojiを呼び出しているため、 冷麺が表示されることになる。