Heim  >  Artikel  >  Backend-Entwicklung  >  Wenig Kenntnisse in C# (5): Abstrakte Klassen und Schnittstellen

Wenig Kenntnisse in C# (5): Abstrakte Klassen und Schnittstellen

黄舟
黄舟Original
2017-02-07 15:18:221206Durchsuche

Zusammenfassung der abstrakten Klasse:

Abstrakte Klassen und abstrakte Methoden können mit dem Schlüsselwort abstract identifiziert werden. Es gibt keine vollständig definierte Klasse oder Methode. Daher kann der Instanziierungsvorgang nicht direkt ausgeführt werden.

Da es nicht vollständig definiert ist, kann es nicht mit dem Schlüsselwort „sealed“ versiegelt werden.

Abstrakte Methoden enthalten nicht den Programmkörper:

 public abstract class Student
    {
        //抽象方法,不含程序体
public abstract void GetStudentID();
//子类可访问字段
prodected int i;
//定义i的属性
public int I
{
    get
    {
        return i;
    }
}
}

Abstrakte Methoden, die abstrakte Klassen in geerbten Klassen implementieren

 public class ah:Student
    {
        public ah(int a)
        {
            this.i=a;
        }
        Public override void GetStudentID()
        {
            Console.writeline(i.ToString());
        }
    }

Schnittstelle:

Einheitliche Planungsoberfläche. Wird verwendet, um Spezifikationen zu definieren, die in Unterklassen befolgt werden müssen (z. B. Methodenidentifikation).

Wie die abstrakte Klasse kann sie nicht direkt instanziiert und betrieben werden.

Die Schnittstelle kann die Identifizierung von Methoden, Eigenschaften oder Indexern definieren.

Alle Mitglieder in der Schnittstelle haben die Standardattribute öffentlich und abstrakt. Alle Methoden in der Schnittstelle müssen in Unterklassen implementiert werden.

Eine Klasse kann mehrere Schnittstellen erben, und eine Schnittstelle kann mehrere Schnittstellen erben.

   public interface first
     {
     //索引器
     string this[int i]
    {
         get;
         set;
    }
    //方法
    int fun(int t);
    //属性
    string j
    {
        get;
        set;
    }
    }

Das Obige ist das kleine Wissen über C# (5): der Inhalt abstrakter Klassen und Schnittstellen. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.org). .php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn