抽象类

1.用abstract创建仅用于继承用途的类和类的成员。

2.抽象类不能被实例化,用于提供派生类可共享的基类的公共定义,

3.抽象类可以定义抽象方法,但是不提供实现,

public abstract class A


{

  public abstract void FAng();//方法块

}

抽象方法没有实现,所以方法定义后面是分号,而不是常规的方法块。抽象类的派生类必须实现所有抽象方法。当抽象类从基类继承虚方法时,抽象类可以使用抽象方法重写该虚方法。

4.抽象类继承基类虚方法时,可重写虚方法

public  class D()

{

public virtual void Fav()

{

}

}

public abstract class E:D

{

 public  abstract overide voidFav();

}

public class F :E

{

 public  override void Fav()

{

}

如果将虚方法声明为抽象方法,则它对于从抽象类继承的所有类而言仍然是虚的。继承抽象方法的类无法访问该方法的原始实现。在前面的示例中,类 F 上的 Fac() 无法调用类 D 上的 DoWork。在此情况下,抽象类可以强制派生类为虚方法提供新的方法实现。

posted @ 2012-09-10 14:35  .NET Explore  阅读(141)  评论(0编辑  收藏  举报