抽象类:
1.在C#中使用关键字 abstract 来定义抽象类和抽象方法。
2.不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们的实例。
3.使用abstract 在一个类声明中表示该类倾向要作为其它类的基类成员被标示成abstract,或被包含进一个抽象类,必须被其派生类实现。
abstract class Animal
{
abstract public void Eat();
public virtual void Fly()
//static void Main(string[] args){
//Animal t=new Animal();
// t.Eat();抽象类不能被实例化,应该在子类中实现
}
}
//一个包含非抽象方法的抽象类
class Dog:Animal
{
public override void Eat()
{
Console.WriteLine("狗吃骨头");
}
static void Main(string[] args){
Animal t=new Dog();
t.Eat();//抽象类不能被实例化,应该在子类中实现
}
抽象类具有以下特征:
1、抽象类不能被实例化。
2、抽象类可以包含抽象方法和访问器
3、不能把抽象类用密封(sealed)来修饰,那就意味着类不能被继承, 这违反抽象类被继承的原则。
4、抽象类的非抽象子类必须实现其继承的所有抽象方法和抽象访问器
5、通过声明派生类也为抽象,我们可以避免所有或特定的虚方法的实现,这就是抽象类的部分实现。
更多精彩可以关注我们的狗刨网http://www.gopedu.com/