java设计模式
2beabetterman
这个作者很懒,什么都没留下…
展开
-
java设计模式入门
1.为什么要用设计模式? 在实际开发过程中会遇到需求变更(增加、查看、修改)和代码利用等情况,而为了减少需求变更、后期维护所需工作量和提高代码复用率,就出现了设计模式。设计模式本质上是挖掘出一类代码的共性抽象成不重复的代码和对代码的解耦(减少代码对其它代码的依赖)。2.面向接口编程的好处? 实际开发过程中很有可能出现频繁的需求改动,就存在一部分业务逻辑的修改会影响到其它模块代码。而如原创 2015-11-29 23:57:11 · 372 阅读 · 0 评论 -
模板方法
1.应用场景,当两个类有类似的方法时,比如:public class A{ public void fly(){ A1(); A2(); A3(); A4(); } public void A1(){}; //...}public class B{ public void run(){原创 2016-01-01 17:28:41 · 237 阅读 · 0 评论 -
观察者模式
1.应用场景 有一些数据,存在很多应用需要使用这些数据。那么在数据更新的时候,就需要实时更新这些应用对应的数据 2.实际代码数据类接口public interface DataInterface extends ApplicationInterface{ void setApplication(Application app); void removeApplicatio原创 2015-11-30 22:02:20 · 242 阅读 · 0 评论 -
适配器模式
1.应用场景 A想要与B对接,但是发现方法名完全不一样。 2.解决方案 这时需要一个中间件来解决其中的不一致,如果A的方法B不能完成,那么可以抛出不支持异常。 3.实现代码B接口public interface BInterface{ void B1(); void B2();}B类public class B implements BInterface{原创 2016-01-03 21:57:16 · 242 阅读 · 0 评论 -
装饰者模式
1.应用场景 当一个主体A最多拥有n个部件并且每个部件都可没有时,如果用类来描述A及其部件,那最多可以用到2n2^n个类,这时明显不合理。如果把所有部件放在一个类里则会造成这个类过于庞大,不易于维护。 2.解决方案 采用递归的思想,让主体A和其部件实现同一个接口,并且部件内包含实现接口。 3.实现代码 主体A和其部件都应该实现的接口 public interface原创 2015-12-23 21:34:39 · 247 阅读 · 0 评论 -
命令模式
1.应用场景 如果一个遥控器拥有多个按钮,每个按钮可以控制开或者关,但是可以动态设置控制不同的组件(比如电视,冰箱等)。 2.这时可以对每一个组件建立相应的命令,并将这些命令动态的设置进遥控器 3.代码实现遥控器类public class RemoteController{ private Command[] command; //如果使用栈则可以从最后开始u原创 2015-12-25 23:48:38 · 473 阅读 · 0 评论 -
工厂模式
1.应用场景 如果程序中频繁使用new来新建类,会导致类的泛滥,而且有些类只需要一个就够了。 2.解决方案 用单独的方法来新建类,可以构建容器来管理相应的类。 3.实现代码工厂类public class Factory{ private Factory factory; private Factory(){ }; public stat原创 2015-12-23 21:59:43 · 289 阅读 · 0 评论 -
单例模式
1.应用场景 某一个类在整个系统中只需要一个实例,不能过多的创建。 2.解决方案 利用私有的构造方法。 3.代码实现public class SinglePattern{ private static SinglePattern single; private SinglePattern(){ } public static Singl原创 2015-12-26 00:04:40 · 289 阅读 · 0 评论