私は数多くのS/O投稿を検索しましたが、私を助ける答えは見つかりませんでした。
私は、抽象クラスとインタフェースとは何かについての精神的なビジョンを得たいと考えています。私はこの投稿Real world abstract class usage simple samplesを読んだが、私はまだその概念についてはっきりしていない。asp.netの抽象クラスvsインターフェイスの現実世界概念を取得しようとしています
私は誰かが "Person"オブジェクトの形で現実の世界を記述できることを望んでいます。 だから、継承は可能「人」だろう - >「従業員」 - >「マネージャー」
およびオーバーライドが、私は抽象クラスを記述することができますどのように「従業員の給与が」なる「営業社員手数料」
だろうとPersonオブジェクトの概念内のインタフェース?
良い類推。人が抽象クラスだと言っていますか? – DotNetRookie
@DotNetCookie - 私は本当にそうするかどうかは言いたくありません。それはあなたが解決しようとしている問題のコンテキストに依存します。 「普通の」Personオブジェクトをインスタンス化できる必要がある場合、それはあまり意味がありません。この場合(Person - > Employee - > Manager)、基底クラスのPerson、abstractを作るのが理にかなっています。 –
Personとのインターフェイスに使用する動作は、Feedメソッドを宣言できるIEatです。要するに、インタフェースは、Mammal:IEat> Person>など、PlantLife:IEat> Cactusのようなインタフェースなので、PersonはPlantLife(それのような行為)ではなく、何らかの方法で食べる。 –