中括弧は何をしていますか?「新しい」表現の中括弧は? (例えば、 "new MyClass(){...}")
handler1 = new Handler() {
public void handleMessage() {
}
};
object = new Class_Name() {};
? この構文はAndroidまたはJavaにのみ存在しますか? Javaで何が呼び出されていますか?あなたのお手伝いをありがとう。
中括弧は何をしていますか?「新しい」表現の中括弧は? (例えば、 "new MyClass(){...}")
handler1 = new Handler() {
public void handleMessage() {
}
};
object = new Class_Name() {};
? この構文はAndroidまたはJavaにのみ存在しますか? Javaで何が呼び出されていますか?あなたのお手伝いをありがとう。
Handler
を拡張するanonymous classのインスタンスを作成するための構文です。これはJavaの一部です。
ありがとうございました。私はこれのために多くの時間を失った:((。 – wanting252
これは、インターフェイスのインスタンス参照を作成するときに発生します。 たとえば、クラスにRunnable
というインターフェースのインスタンスを作成したいのですが、そのために匿名クラスを作成して作成し、インターフェースのrun()
メソッドをオーバーライドすることができます。以下に述べる以外の別の例を見ることで、よく理解できます。
Runnable runnable = new Runnable() {
public void run() {
// TODO Auto-generated method stub
}
};
重複/関連質問:[ "新しいテスト(の違い)と新しいテスト(){}"](http://stackoverflow.com/q/22164036/320399) – blong