44

中括弧はそこで何をしますか?

handler1 = new Handler() {

        public void handleMessage() {

       }
};

object = new Class_Name() {};?この構文はAndroidまたはJavaにのみ存在しますか?そして、それはJavaで何と呼ばれていますか?あなたの助けに感謝します。

4

3 に答える 3

44

これは、を拡張する匿名クラスのインスタンスを作成するための構文ですHandler。これはJavaの一部です。

于 2012-05-06T07:03:17.787 に答える
3

これは、インターフェイスのインスタンス参照を作成するときに発生します。たとえばRunnable、クラスを使用してインターフェイスのインスタンスを作成したい場合は、同じクラスの匿名クラスを作成しrun()てインターフェイスのメソッドをオーバーライドすることで作成できます。以下に述べた以外の別の例を見るとよく理解できます。

Runnable runnable = new Runnable() {

    public void run() {
        // TODO Auto-generated method stub

    }
};
于 2012-05-06T07:25:25.247 に答える