-
引入抽象类和接口的原因
即"针对接口编程",关键就在多态,即向上转型
当变量的的声明类型是超类型时,即抽象类或者接口,这样,只要是具体实现此超类型的类所产生的对象,都可以指定给这个变量,而不用分别为不同的对象声明不同的变量
-
抽象类和接口的不同
接口,只能明确方法名,但是没有实现
当已经明确了需要的超类型中的某个方法的实现时,就可以用抽象类,因为这样可以避免每个实现类的共同方法的冗余。(抽象类中可以有方法的实现)
当需要的超类型中的所有方法的实现都不相同但是方法名完全相同时,可以用接口(接口的所有方法都要被实现类实现)。
当需要多继承时,也要用到接口。
相关文章
- 02-14你必须知道的.net读书笔记之第二回深入浅出关键字---对抽象编程:接口和抽象类
- 02-14C++学习之路—多态性与虚函数(二)纯虚函数与抽象类
- 02-14面向对象 OOP中的抽象类,接口以及多态
- 02-14逆变(contravariant)与协变(covariant):只能用在接口和委托上面
- 02-14抽象类,多态和接口
- 02-14三大修饰符static,final,abstract,接口和抽象类的区别
- 02-14接口类和抽象类
- 02-14Typescript中抽象类与接口详细对比与应用场景介绍
- 02-14第13章抽象类与接口-implements_animal
- 02-14GOGOUP-11. 接口和多态