エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
(C#) interface/core パターンによるポリモーフィズム - ネコのために鐘は鳴る
継承の濫用による設計の矛盾 コード共通化のためだけの継承の濫用が設計の矛盾を生むというのを分かって... 継承の濫用による設計の矛盾 コード共通化のためだけの継承の濫用が設計の矛盾を生むというのを分かっている方は、下の問題設定だけ見て、次の項まで読み飛ばしてください。 問題設定 人間・犬・猫には「歩く」という共通の振る舞いがあり、現在の「位置」を持っている。 全ての生き物はデフォルトでは速度1で歩くが、犬と猫は速度2で歩く。 猫は昼寝をし、昼寝を始めると歩かない。 C#er 的には自然な考えとして、まずは継承で実装してみましょう。 public abstract class Walkable { public int X { get; protected set; } public virtual void Walk() => X += 1; } public class Human : Walkable{ } public class Dog : Walkable { public over
2021/05/05 リンク