編集の要約なし
編集の要約なし
1行目: 1行目:
< [[Java基本文法]]
< [[Java基本文法]]


# <u>メンバクラス</u>:クラスブロック内部、フィールドやメソッドと一緒に定義(static有無で用途が違う)
===メンバクラス===
# <u>ローカルクラス</u>:メソッド内部に定義。そのメソッド内でのみ複数回使いたい時に利用
クラスブロック内部、フィールドやメソッドと一緒に定義(static有無で用途が違う)
# <u>匿名クラス</u>:親クラス名を利用してインスタンス化と定義を同時にしてしまう。使い捨てクラス
 
===ローカルクラス===
メソッド内部に定義。そのメソッド内でのみ複数回使いたい時に利用
public class Outer {
    int field;
    void method() {
        int a = 10;
        class Inner {
            public void innerMethod() {
                System.out.println("This is innerMethod.");
            }
        }
        Inner inn = new Inner();
        inn.innerMethod();
    }
}
 
===匿名クラス===
親クラス名を利用してインスタンス化と定義を同時にしてしまう。使い捨てクラス

2019年7月2日 (火) 11:22時点における版

< Java基本文法

メンバクラス

クラスブロック内部、フィールドやメソッドと一緒に定義(static有無で用途が違う)

ローカルクラス

メソッド内部に定義。そのメソッド内でのみ複数回使いたい時に利用

public class Outer {
    int field;
    void method() {
        int a = 10;
        class Inner {
            public void innerMethod() {
                System.out.println("This is innerMethod.");
            }
        }
        Inner inn = new Inner();
        inn.innerMethod();
    }
}

匿名クラス

親クラス名を利用してインスタンス化と定義を同時にしてしまう。使い捨てクラス