黑马程序员技术交流社区

标题: 关于接口和抽象类你们怎么理解的? [打印本页]

作者: 马超(Andy)    时间: 2014-7-28 22:47
标题: 关于接口和抽象类你们怎么理解的?
RT,关于抽象类和接口你们是怎么理解的?




作者: 七弟    时间: 2014-7-28 23:52
抽象类定义的是体系的基本共性内容,接口定义的是体系的扩展功能.
作者: zeus00456    时间: 2014-7-29 14:10
抽象类是类的胚胎,具备类的雏形,虽然已经开始发育但是发育不完整,不完整的地方用关键字 abstract 标记
接口是抽象类中的战斗类,简直就是类的受精卵,完全没有发育,所以没脸自称类(class)只能叫做interface。

作用上,抽象类是分析问题时建立上级模型(父模型)(粗模型)的。假如,我们的问题中涉及到了学生和工人,他们都是人的子类,他们都具备一个叫做“行动”的方法,但是此方法的内容不同:学生的行动方法中定义了学习;工人的定义了工作。
于是我们定义一个叫做人抽象类,让它的子类成为我们实际直接应用的类。“人”抽象类定义了我们用到的类中的大部分内容,但是,不确定的方法“行动”空着,不写具体内容。这就是抽象类的功能(我认为)

相对于抽象类,接口的作用更接近于扩展功能。无论是谁想扩展出这种功能,只要实现这个接口以及其中包含的方法就好。个人感觉类似一个迷你框架
作者: 旅行。    时间: 2014-7-29 14:40
我理解就是接口里都是未实现的方法,存在与service包下,可以任意实现
作者: sugar    时间: 2014-7-29 14:48
抽象类与普通的类没太大的区别,就是多了抽象方法,不能被实例化
作者: tonglingwang    时间: 2014-7-29 20:25
抽象类用private修饰,里面可以有用private修饰的方法(没有方法体),强制子类进行覆写; 可以理解为:具有某些公共方法的一个总结类。抽象类是从多个类中抽象出来的模板,若要将这种抽象进行得更彻底,就得用到一种特殊的“抽象类”→ 接口;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2