概述
一接口
1.接口是实现可插入性的保证
2.实现一个接口的具体类往往是没有具体关联的,有的只是因为他们有同样的责任,对外可以提供同样的服务,具有接口中一组行为。
如:swing中的监听器,只要你实现接口,你就可以监听具有发出此功能的控件。一个类只要实现Runnable接口,此类就具有线程的功能,具有线程的服务。
3.类型的声明
java中局域变量,方法参数,方法的返回,数据类型的转换应该声明为抽象类或接口。
更好的是声明为接口。
具体类中应该是实现接口或者抽象类中声明过得方法,而不应该给出多余的方法.
4.接口是对客户的承诺,承诺已断作出,就不能改变.
二抽象类
1.抽象类是用来继承的,具体类不是的.应该尽可能不要从具体类继承.
2.在一个类形成的继承等级结构中,树叶节点应该是具体类,树枝节点应该是抽象类
3.抽象类中应该集中更多的代码。
4.数据应该集中到具体类中,数据是否使用,都会占据内存的.
5.什么时候应该使用继承 (满足里氏替换原则)
a.是is-a关系,而不是has-a关系
比如:苹果 is-a 水果 人 has-a 学生角色 或 司机角色 或 IBM角色
is-a关系用继承,has-a关系用聚合
b.只有在商业逻辑中处于相同的概率,才可以继承。不要从工具类继承.
c.不可能将一个类得子类替换为另外一个类得子类
d.子类具有扩展超类的责任,而不是替换(override)或者撤销超类得责任.
6.应该使用java接口声明超类的类型。
最后
以上就是冷傲世界为你收集整理的JAVA与模式-接口和抽象类的全部内容,希望文章能够帮你解决JAVA与模式-接口和抽象类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复