待ってください、あなたが考え始める前に、はっきりさせておきたいのですが、私はインターフェイスとアブストラクトの通常の違いについて質問するつもりはありません。
MSDNで Abstract と Interface の違いを経験しました。
それは言われています:
基本クラスを更新することにより、すべての継承クラスが変更で自動的に更新されます。
一方、インターフェイスは一度作成すると変更できません。新しいバージョンのインターフェイスが必要な場合は、まったく新しいインターフェイスを作成する必要があります。
これを参照してください: -
誰でも次の例を使用してこれを証明できますか: -
abstract class WashingMachine
{
abstract public void Wash();
}
class Philips : WashingMachine
{
public Philips() { }
override public void Wash(){//Wash code here....}
}
class Samsung : WashingMachine
{
public Samsung() { }
override public void Wash(){//Wash code here....}
}
class Videocon : WashingMachine
{
public Videocon() { }
override public void Wash(){//Wash code here....}
}
ここで、 WashingMachineに次の新しい抽象メソッドを追加した場合: -
abstract public void Rinse(int loadSize);
すべての継承クラス (つまり、Philips/Samsung/Videocon) は、変更によってどのように自動的に更新されますか?