抽象类
a:在C#中使用关键字 abstract 来定义抽象类和抽象方法。
b:不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们的实例。
c:使用abstract 在一个类声明中表示该类倾向要作为其它类的基类成员被标示成abstract,或被包含进一个抽象类,必
被其派生类实现。
abstract class ShapesClass
{
abstract public int Area();
}
class Square : ShapesClass
{
int x, y;
public override int Area()
{
return x * y;
}
}
d:一个抽象类可以包含抽象和非抽象方法,当一个类继承于抽象类,那么这个派生类必须实现所有的的基类抽象方法。
e:我们不能把关键字abstract 和 sealed 一起用在C#中,因为一个密封类不能够被抽象。
我们不能把关键字abstract 和 sealed 一起用在C#中,因为一个密封类不能够被抽象。
abstract class MyAbs
{
public abstract void AbMethod1();
public abstract void AbMethod2();
}
但是通过声明派生类也为抽象,我们可以避免所有或特定的虚方法的实现,这就是抽象类的部分实现。
abstract class MyAbs
{
public abstract void AbMethod1();
public abstract void AbMethod2();
}
abstract class MyClass1 : MyAbs
{
public override void AbMethod1()
{
Console.WriteLine("Abstarct method #1");
}
}
抽象类的特征
1、抽象类不能被实例化。
2、抽象类可以包含抽象方法和访问器
3、不能把抽象类用密封(sealed)来修饰,那就意味着类不能被继承,
这违反抽象类被继承的原则。
4、抽象类的非抽象子类必须实现其继承的所有抽象方法和抽象访问器
5、通过声明派生类也为抽象,我们可以避免所有或特定的虚方法的实现,这就是抽象类的部分实现。
大家想学更多的关于unity3D的知识吗?那就快关注:
也请大家关注我的博客我会每天更新一部分知识点的: