内部クラスで禁止されている静的フィールド:根拠
javaは、内側のクラス(または通常の内側クラス)のために内側のクラス(または通常の内側クラス)内の内側のインナークラスの宣言を禁止しています。囲まれたクラスのインスタンス。これは、内部クラスの各インスタンスには、囲まれたクラスの特定のインスタンスと一意の関連性があることを意味します。その結果、内部クラス内の静的フィールドを許可すると、静的フィールドが属する場合に曖昧さが曖昧になります。 クラスインナークラス{ 静的int i = 100; //エラーをコンパイルします } }
内部クラスで静的フィールドが許可されている場合、私が属している静的フィールドがどのアウタークラスのインスタンスのインスタンスを判断する明確な方法はありません。このあいまいさは、ランタイムエラーと一貫性のない動作につながる可能性があります。
。さらに、内部クラス内の静的フィールドを許可すると、インスタンスベースの依存関係の原則と矛盾します。内部クラスは、囲みclassを囲むクラスのインスタンスに依存しているため、任意のインスタンスとは独立して動作するように設計された静的な機能を持つことは意味がありません。
class OuterClass { class InnerClass { static int i = 100; // compile error } }
[&& && && && to。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3