javaの匿名内部クラスの使用方法は何ですか?
Javaの匿名内部クラスは、クラスを宣言およびインスタンス化すると同時に、クラスを直接定義する特別な方法の一つです。匿名内部クラスを使用することで、コードの記述が簡素化され、コードの可読性が向上します。
匿名内部クラスを使用する手順は次のとおりです:
- 匿名内部クラスは、インターフェースまたは抽象クラスの実装クラスとして定義するか、または直接クラスのサブクラスとして定義することができます。
- 新しい
- 匿名クラスがインターフェースを実装している場合、そのインターフェースの実装メソッドは、インターフェースの実装クラス内で直接実装することができます。
- 匿名内部クラスがクラスを継承している場合、そのクラスのサブクラスで親クラスのメソッドを直接上書きすることができます。
匿名内部クラスを使用したサンプルコードを以下に示す:
public class AnonymousInnerClassExample {
public static void main(String[] args) {
// 使用匿名内部类实现接口
MyInterface myInterface = new MyInterface() {
@Override
public void method() {
System.out.println("实现接口的匿名内部类");
}
};
myInterface.method();
// 使用匿名内部类继承类
MyClass myClass = new MyClass() {
@Override
public void method() {
System.out.println("继承类的匿名内部类");
}
};
myClass.method();
}
// 定义接口
public interface MyInterface {
void method();
}
// 定义类
public static class MyClass {
public void method() {
System.out.println("原始类");
}
}
}
結果は次の通りです:
实现接口的匿名内部类
继承类的匿名内部类
上記のコードでは、匿名内部クラスを使用して、MyInterfaceインタフェースとMyClassクラスをそれぞれ実装し、対応するメソッドを再定義しました。mainメソッドでは、匿名内部クラスのインスタンスを作成し、対応するメソッドを呼び出しました。