您的位置:首页 > 其它

抽象类和接口主要区别分析

2015-05-15 20:38 267 查看
1、抽象类和接口最大区别:抽象类可以提供某些方法的部分实现,而接口不可以。

如果向抽象类加入一个新的具体方法时,那么它所有的子类都会得到这个新方法,而接口做不到这一点,

如果向接口里加入一个新方法,所有实现这个接口的类就无法成功通过编译了,因为你必须让每一个类都再实现这个方法才行,这显然是接口的缺点。

2、抽象类的实现只能由这个抽象类的子类完成,任何一个实现接口所规定的方法的类都可以具有这个接口的类型,而一个类可以实现任意多个接口,从而这个类就有了多种类型。

3、接口是定义混合类型的理想工具,混合类表明一个类不仅仅具有某个主类型的行为,而且具有其他的次要行为。

由此得出结论,声明类型的工作仍然由接口承担,但是同时给出一个Java抽象类,且实现了这个接口,而其他同属于这个抽象类型的具体类可以选择实现这个Java接口,也可以选择继承这个抽象类,也就是说在层次结构中,Java 接口在最上面,然后紧跟着抽象类,这样能让两者功能最大化,这个模式就是“缺省适配模式”。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: