5

簡単な質問: Android のドキュメントで見たすべての例で、フラグメントは静的な内部クラスです。それはAndroidの要件ですか?または、通常の内部クラスとして設定できますか? 答えを提供するのに十分な Android の内部を理解している人がそこにいますか?

私が OCJP ドキュメントで読んだことから、これらの静的内部クラスはクラスであるとはまったく想定されていませんが、main などの静的メソッドと同様に、それらが含まれているクラスの静的メンバーにすぎません。

あなたの洞察に感謝します。

4

1 に答える 1

9

それはAndroidの要件ですか?または、通常の内部クラスとして設定できますか?

通常の (非静的) 内部クラスにすることはできません。通常の内部クラスのインスタンスを作成できるのは外部クラスのインスタンスのみであり、Android はフラグメントを再作成する必要があります (たとえば、構成の変更時)。フラグメントは、通常の Java クラスまたは静的内部クラスのいずれかである必要があり、引数のない public コンストラクターが必要です。

これらの静的内部クラスはクラスであるとはまったく想定されていませんが、main などの静的メソッドと同様に、それらが含まれているクラスの静的メンバーにすぎません。

どうやってその解釈に至ったのか、私にはわかりません。

于 2013-02-24T01:59:19.840 に答える