C# 的abstract 、 virtual、override、sealed

abstract 声明抽象类,的只能作为其他类的基类,类似接口,用override来实现方法

virtual  声明类中的方法可以被重写

override 可以用来重写 被virtual  声明的方法或类

sealed class 不能被继承的类,封闭的类

//声明抽象类D

 public abstract class D { public abstract string Method(); }  

//声明类S继承D 实现 Method

   public class S : D { public override string Method() { return ("S"); } }

//声明类A 继承S 声明A类中 Method 可被重新

    public class A : S { public  virtual string Method() { return ("A5555555"); } }

//声明类B 继承A 重写A中的  Method

    public class B : A { public override string Method() { return ("B"); } }

     S a = new B();             Response.Write(a.Method());//输出S

     A a = new B();             Response.Write(a.Method());//输出B 因为B类中override重写了A类中的Method 去掉override 输出A5555555

 

posted on 2013-09-04 11:06  潘立涛  阅读(209)  评论(0)    收藏  举报

导航