标签:而不是 自己 min data- 执行 class 最大 style 最大的
微软官方文档:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/abstract-and-sealed-classes-and-class-members
通过在类定义前面放置关键字 abstract
,可以将类声明为抽象类。 例如:
public abstract class A { // Class members here. }
抽象类不能实例化。 抽象类的用途是提供一个可供多个派生类共享的通用基类定义。 例如,类库可以定义一个抽象类,将其用作多个类库函数的参数,并要求使用该库的程序员通过创建派生类来提供自己的类实现。
抽象类也可以定义抽象方法。 方法是将关键字 abstract
添加到方法的返回类型的前面。 例如:
public abstract class Animal { public abstract void Call(); //无方法体 public virtual void Bak() //有方法体 { Console.WriteLine("jiaojiao"); } public Animal(int id) { Console.WriteLine(id); } } public class Dog : Animal { public override void Call() //重写抽象方法 { } public override void Bak() //重写虚方法 { Console.WriteLine("goujiao"); // base.Bak(); } public Dog(int id) :base(id) //调用父类的Animal.Animal(id) 方法 { } }
在 C# 中,派生类可以包含与基类方法同名的方法。
基类方法必须定义为 virtual。
如果派生类中的方法前面没有 new 或 override 关键字,则编译器将发出警告,该方法将如同存在 new
关键字一样执行操作。
如果派生类中的方法前面带有 new
关键字,则该方法被定义为独立于基类中的方法。
如果派生类中的方法前面带有 override
关键字,则派生类的对象将调用该方法,而不是调用基类方法。
可以从派生类中使用 base
关键字调用基类方法。
base其实最大的使用地方在面向对象开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法。
原文链接:https://www.cnblogs.com/eedc/p/6343201.html
标签:而不是 自己 min data- 执行 class 最大 style 最大的
原文地址:https://www.cnblogs.com/fuyouchen/p/9363970.html