笑嘻嘻

解决方案 »

  1.   

    ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/csref/html/vclrfCSharpKeywords_PG.htm
      

  2.   

    virtual方法是为了子类override的,如果问也应该问抽象类和接口的区别,他们最大的区别就是一个类可以实现无数个接口,但只能从一个抽象类继承。项目中常用接口。
      

  3.   

    abstract可以看成是一种virtual方法,因为它是纯虚的方法,没有实现的代码,只有方法头。子类必须实现父类abstract方法,否则子类还将是抽象类,抽象类是不能被实例化的。virtual方法不一定要去override它。
      

  4.   

    抽象类不能被实例化, 而一般的基类, 若不是抽象的, 则可以实例化.abstract方法和virtual方法的区别:
    基类不能实现抽象方法, 只能由子类实现.
    虚方法在基类中有实现, 子类若覆盖之, 则用子类的实现, 否则用基类的实现.
      

  5.   

    抽象类和接口的存在是为了实现程序依赖于抽象而不是具体
    override和virtual可以算是实现多态的一种途径抽象类只能单继承,接口可以多继承;抽象类可以做必要的初始化等工作(方法不必完全是abstract的),接口只有申明;当需要一个体系(系统)时,抽象类用来作基类,当需要时向某种方法时,这种方法有可能在不同的体系中用到,就用接口;区别还有很多,不列了
      

  6.   

    virtual
    子类可以重写
    abstract
    子类必须重写