黑马程序员技术交流社区

标题: abstract class和interface有什么区别(解决) [打印本页]

作者: 刘健    时间: 2012-8-4 13:24
标题: abstract class和interface有什么区别(解决)
本帖最后由 刘健 于 2012-8-4 16:14 编辑

abstract class和interface有什么区别???
作者: 胡文凡    时间: 2012-8-4 13:27
这个问题百度一下一堆。。。
作者: 郑文博    时间: 2012-8-4 14:05
个人理解
首先,抽象类中必然包含抽象方法也可以包含一般方法,接口中只包含抽象方法。抽象方法就像游戏规则,抽象类跟接口中一旦定义,则子类或者实现类中必须要对其进行复写。
其次,抽象类主要是用于被继承的,共性一般方法定义其中,子类便可以直接拿过来用,提高了代码的重用性但是java中只可以单继承,接口却可以多实现。接口多实现,即一个类可以implements接口A和接口B等,同时被实现的接口间用逗号隔开。接口相当于提供功能的扩展。例如在开发工程中,某个工程最早只完成一项任务,随着技术的更新,需要对之前开发的工程增加项目。这时不可能把原有的工程重新来写,这样工作量太大,便可以把新的项目功能定义在一个接口中,让原有的工程去实现这个接口,复写其中的方法便达到了功能的扩展。
希望能帮到楼主。
作者: 樊占江    时间: 2012-8-4 14:26
最大的区别就是:
class 是普通类
abstract 是抽象类
interface 是接口  




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