虚方法和抽象方法

虚方法virtual,抽象方法abstract
虚方法要有方法体,抽象方法,不允许由方法体
虚方法可以被子类override,抽象方法必须被子列override
虚方法除了密封类都可以写,抽象方法只能在抽象类中
相同点:都可以被子类重写

什么时候用抽象方法,什么时候用虚方法:
父类本身需要被实例化,不知道方法体该怎么写,用抽象方法
父类绝对不会被实例化,知道方法体要怎么写,用虚方法

您在什么情况下会用到虚方法?它与接口有什么不同?
子类重新定义父类的某一个方法时,必须把父类的方法定义为virtual
在定义接口中不能有方法体,虚方法可以。
实现时,子类可以不重新定义虚方法,但如果一个类继承接口,那必须实现这个接口。

posted on 2017-11-07 17:17  D-Z-K  阅读(195)  评论(0编辑  收藏  举报

导航