1

私はこれらのコードを見ました。

私はそのようなコンストラクターを見たことがありませんが、抽象メソッドの実装で新しいAインスタンスを作成すると思います。

それはなんと呼ばれていますか?

new A() {
    @Override
    public void onEvent() {
        dosomething();
    }
};
4

2 に答える 2

3

匿名のクラスを参照していますか?実装を提供するが、名前付きクラスを定義しない場合。つまり、オブジェクトをインプレースで提供しているということです。を書いたことがないため、その定義を他の場所で再利用することはできませんclass MyClass {}。これが「匿名」である理由です。

これを参照してください。

于 2012-08-06T01:34:18.413 に答える
0

これは、クラスAのonEventメソッドをオーバーライドしたタイプAのオブジェクトです。これは、メソッドをオーバーライドした匿名クラスと呼ばれます。

于 2012-08-06T01:44:00.417 に答える