「プライベート」インターフェースの使用例?
インターフェイスがクラスのパブリックプロパティと関数を定義する方法と同様の方法で、クラスの特定の内部プロパティと関数を適切に定義できる有効なユースケースがあるかどうか疑問に思いました。 人間を説明するクラスを構築する必要があるタスクを想像してみてください。 明らかに、各人間はヒューマノイドクリーチャーですが、すべてのヒューマノイドクリーチャーが人間であるとは限らないため、おそらく次のような機能を持つインターフェースIHumanoidがあります(ボディプランをクラスにハードコードすることは役に立たないため)。 public interface IHumanoid { function get head():IHead; function get torso():ITorso; function get leftArm():IArm; function get rightArm():IArm; function get leftLeg():ILeg; function get rightLeg():ILeg; } さらに、そして明らかに、各人間は哺乳動物ですが、すべての哺乳動物が人間であるとは限らないため、どこかに浮かぶ男性と女性の2つの定義を持つ別のインターフェイスIMammalがおそらくあります。 public interface IMammal { function procreate(partner:IMammal):void; } public interface IMaleMammal extends IMammal { function inseminate(female:IFemaleMammal):void; } public interface IFemaleMammal extends IMammal { function …