首页
诗词
字典
板报
句子
名言
友答
励志
学校
网站地图
软件开发
软件开发
软件架构设计
CVS SVN
VSTS
PowerDesigner
Rational
软件测试
当前位置:
首页
>
教程频道
>
软件管理
>
软件开发
>
Java IOC设计形式
2012-08-15
Java IOC设计模式?Java IOC设计模式public?class?Button?{????private?Lamp?lamp????public?void?push()?
Java IOC设计模式
?
Java IOC设计模式public?class?Button?{?
???private?Lamp?lamp;?
???public?void?push()?{?
???????lamp.turnOn();?
???}?
}?
???但是马上发现这个设计的问题,Button类直接依赖于Lamp类,这个依赖关系意味着当Lamp类修改时,Button类会受到影响。此外,想重用Button类来控制类似与Lamp的(比如同样具有turnOn功能的Computer)另外一个对象则是不可能的。即Button控制Lamp,并且只能控制Lamp。显然违反了“高层模块不应该依赖于低层模块,两者都应该依赖于抽象;抽象不应该依赖于具体实现,细节应该依赖于抽象” 这一原则(DIP原则)。考虑到上述问题,自然的想到应该抽象出一个接口SwitchableDevice,来消除Button对Lamp的依赖,于是设计如下:?
public?class?Button?{?
???private?SwitchableDevice?lamp;?
???public?Button(){?
???lamp=?new?Lamp();?
???}?
}?
查看更多
下一篇
本文网址:
https://www.reader8.net/jiaocheng/20120815/2076554.html
读书人精选
热点排行
Java多线程设计模式之线程池形式
1、junit学习之junit的基本介绍
HeadFirst(7)Adapter 适配器设计模式
简单记录下在mac下安装虚拟机装xp系统碰
设计模式2-建造模式
设计模式:外观形式
在一台电脑上起动两个项目用同一个tomcat
Java模板设计模式之基于结合实现
设计模式之责任链方式(转)
两年已过去,再看该怎么快速融入新团队