黑马程序员技术交流社区
标题:
虚方法和抽象类的区别和适用场合时什么?
[打印本页]
作者:
hongiqnglik
时间:
2013-8-10 21:00
标题:
虚方法和抽象类的区别和适用场合时什么?
在实现多态是,什么时候用虚方法什么时候用抽象类?它们有何区别?
作者:
心动行动
时间:
2013-8-10 21:11
如果知道父类的方法怎么实现就可以用虚方法实现多态,如果不知道怎么实现,则用抽象类。语法区别的话虚方法是在父类的方法前面加上virtaul,而抽象类则要在声明类的时候加上abstract,抽象类的方法里面不用写内容,个人觉得虚方法可以转换成抽象类,知识代码会多一点,会多写一个类。但如果不知道某个方法怎么实现的话,虚方法就不能转换成抽象类
作者:
高腾
时间:
2013-8-11 00:31
1、抽象类不能作用于值类型 而接口可以作用于值类型 比如说让一个结构体实现接口
2、抽象类是一种功能、规范 可以作用于没有继承关系的两个类 比如说鸟和飞机都有飞的功能 但相互之间并没有直接的联系 这个时候需要使用接口
3、接口可以实现多继承 更好的体现了单一职责原则
4、接口一般用于小模块 提高程序性能 抽象类中会有些用不上的成员 造成冗余
作者:
于驭龙
时间:
2013-8-12 10:26
要用父类本身方法 则用虚方法 比如new 父类().方法 调用的是父类的虚方法..如果new 子类()调用的是子类的重写方法.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2