インターフェイス C とそれを実装するクラス A があるとします。
ここで、A の実装を、クラス B を持つ 1 つを除く C のすべての関数に変更したいとします。A を拡張して C をオーバーライドする必要がありますか、それとも C を新しい独立したクラスとして実装する必要がありますか?
一部の電話会社が、基本的なインターフェイスである Phone を実装したいと考えており、既に OldPhone の古い実装をいくつか持っていて、そのすべての機能を保持したいと考えているとしましょう。電話をかけ、電話を切り、SMS を送信します。すべてを変更する必要がありますが、新しいスマートフォンを作るために他の新しい機能を望んでいます.OldPhoneを拡張する必要がありますか、それとも新しいクラスを作成する必要がありますか?
いつクラスを拡張する必要があるのか 、いつインターフェイスを最初から実装する必要があるのか を知りたい.概念的に異なります。