A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘健 黑马帝   /  2012-8-4 13:24  /  1581 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 刘健 于 2012-8-4 16:14 编辑

abstract class和interface有什么区别???

3 个回复

倒序浏览
这个问题百度一下一堆。。。
回复 使用道具 举报
个人理解
首先,抽象类中必然包含抽象方法也可以包含一般方法,接口中只包含抽象方法。抽象方法就像游戏规则,抽象类跟接口中一旦定义,则子类或者实现类中必须要对其进行复写。
其次,抽象类主要是用于被继承的,共性一般方法定义其中,子类便可以直接拿过来用,提高了代码的重用性但是java中只可以单继承,接口却可以多实现。接口多实现,即一个类可以implements接口A和接口B等,同时被实现的接口间用逗号隔开。接口相当于提供功能的扩展。例如在开发工程中,某个工程最早只完成一项任务,随着技术的更新,需要对之前开发的工程增加项目。这时不可能把原有的工程重新来写,这样工作量太大,便可以把新的项目功能定义在一个接口中,让原有的工程去实现这个接口,复写其中的方法便达到了功能的扩展。
希望能帮到楼主。
回复 使用道具 举报
最大的区别就是:
class 是普通类
abstract 是抽象类
interface 是接口  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马