C#
 Computer >> コンピューター >  >> プログラミング >> C#

抽象クラスと封印されたクラスとC#のクラスメンバー


抽象クラスには、抽象メソッドと非抽象メソッドが含まれます。抽象クラスをインスタンス化することはできません。

封印されたクラスは継承を防ぎ、基本クラスとして使用することはできません。

抽象クラス

抽象クラスを宣言するには、クラス定義の前にキーワードabstractを配置する必要があります。 クラスメンバーの例 抽象クラスでは、抽象メソッドを定義する次のようになります-

public abstract class Vehicle {
   public abstract void display();
}

抽象メソッド定義の後には、実装がないためセミコロンが続きます。

封印されたクラス

封印されたクラスを宣言するには、クラス定義の前に封印されたキーワードを配置する必要があります。封印されたクラスは継承を防ぎ、基本クラスとして使用することはできません。

public sealed class Test {
   // Class members comes here
}

  1. Javaの抽象クラス

    宣言にabstractキーワードを含むクラスは、abstractクラスと呼ばれます。 抽象クラスには、抽象メソッド、つまり本体のないメソッドが含まれる場合と含まれない場合があります(public void get();) ただし、クラスに少なくとも1つの抽象メソッドがある場合、そのクラスは抽象として宣言する必要があります。 クラスが抽象として宣言されている場合、インスタンス化することはできません。 抽象クラスを使用するには、それを別のクラスから継承し、そのクラスに抽象メソッドの実装を提供する必要があります。 抽象クラスを継承する場合は、その中のすべての抽象メソッドに実装を提供する必要がありま

  2. Pythonの抽象基本クラス(abc)

    クラスに1つ以上の抽象メソッドが含まれている場合、そのクラスは抽象クラスと呼ばれます。抽象メソッドは宣言されているメソッドですが、実装は含まれていません。抽象クラスはインスタンス化されない場合があり、その抽象メソッドはそのサブクラスによって実装される必要があります。 抽象基本クラスは、hasattr()のような他の手法が不器用であるか、微妙に間違っている場合(たとえば、マジックメソッドを使用する場合)にインターフェイスを定義する方法を提供します。 ABCは、仮想サブクラスを導入します。これは、クラスから継承しないが、isinstance()およびissubclass()関数によって認識される