黑马程序员技术交流社区

标题: 关于抽象类和接口的问题 [打印本页]

作者: H马凯    时间: 2015-1-23 11:18
标题: 关于抽象类和接口的问题
抽象类和接口有什么区别么?    相比较而言那种更有利于程序的扩展   求大神指教啊
作者: 小棽    时间: 2015-1-23 11:28
本帖最后由 小棽 于 2015-1-23 11:29 编辑

首先,抽象类和接口的关键字不同,抽象类使用abstract修饰,接口使用interface修饰
第二,抽象类中可以有成员变量,但是接口中的变量都是final类型的
第三,抽象类中可以有成员方法,也可以有普通方法,抽象类的子类不一定要重写父类的抽象方法,而接口不一样,接口中的方法都是抽象方法,而且实现接口的子类必须重写接口中的所有方法。
最后就我个人看,接口的扩展性更强

作者: jojo    时间: 2015-1-23 11:39
抽象类的出现其实就是为了让人去继承它,实现代码的复用性。而接口则是一种规范,让人去实现它,也必须遵守它的规则。
作者: H马凯    时间: 2015-1-23 11:57
小棽 发表于 2015-1-23 11:28
首先,抽象类和接口的关键字不同,抽象类使用abstract修饰,接口使用interface修饰
第二,抽象类中可以有成 ...

嗯    谢了
作者: 刘建华    时间: 2015-1-23 12:05
谢了            
作者: gzy    时间: 2015-1-23 12:13
分恩相啊   11111111111111
作者: 周景新    时间: 2015-1-23 12:43
刚学习到这,同学习了。。
作者: Mr.JUN    时间: 2015-1-23 12:44
各有好处,看你的应用在哪方法面,我怎么感激你是刷分的;P
作者: 汝建国    时间: 2015-1-23 13:24
一个实现一个继承,一个可以有非抽象方法,一个都是抽象方法
作者: 朱智彪    时间: 2015-1-26 22:01
同学习了
作者: longzc1991    时间: 2015-1-27 10:45
抽象类和接口很类似,都是定义规则。抽象类不能被实例化,但是可以被继承,继承了抽象类,就必须实现他的抽象方法,抽象方法不能有方法体,抽象类中还可以写普通方法,接口也不能被实例化,可以被其他类继承,继承了接口必须实现接口类所有的方法,接口中的方法都没有方法体,默认不要加public声明,
作者: 潇洒小哥    时间: 2015-1-27 16:01
抽象类是模糊地描述一个对象,接口是描述对象的共同特征。(个人理解- -)




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