本帖最后由 何周舟 于 2012-5-16 02:20 编辑
接口与抽象类的异同点
相同点
1.都是不断向上抽取而来
2.继承 实现后都需要将其中抽象方法复写才能被实例
不同点
1.接口可以被多实现 接口可以继承多个接口
抽象类只能被单继承
2.接口中只能定义抽象方法 成员变量必须为静态 使其变为全局常量
抽象类中可以定义抽象方法还可以定义非抽象方法
3.接口与类的关系 是 like a 像 关系 定义额外功能
抽象类与类的继承是 is a 是 关系 定义该类体系的基本共性内容
上面是毕导上课说的
我个人的理解是 接口是定义额外功能的 主要是用于功能的扩展
你考虑到很多东西都具有这个功能 但是都是属于不同体系的 之间没有继承关系的时候用接口
如果是一个体系 存在继承关系 只是方法功能内部的实现不同就用抽象类 |