java设计模式-Observe】的更多相关文章

一.背景 请模拟下面情形: 小孩在睡觉,醒来后要求吃东西   代码: class Child{ private boolean wakenUp = false; void wakeUp(){ wakenUp = true; } public boolean isWakenUp() { return wakenUp; } public void setWakenUp(boolean wakenUp) { this.wakenUp = wakenUp; } } class Dad implement…
参加校园招聘的笔试,发现公司都会考一些java设计模式,所以上网查询相关内容,总结常用的几种单例模式. 单例模式(Singleton Pattern)是 Java中最简单的设计模式之一.这种类型的设计模式属于创建型模式, 它提供了一种创建对象的最佳方式.这种模式涉及到一个单一的类,该类负责创建自己的对象, 同时确保只有单个对象被创建.这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象. (1).懒汉式 public class SingleTon { private s…
用途 桥接模式 (Bridge) 将抽象部分与实现部分分离,使它们都可以独立的变化. 桥接模式是一种结构式模式. 结构…
本章讲述java设计模式中,策略模式相关的知识点. 1.策略模式定义 策略模式,又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于使用算法的客户.策略模式属于对象的行为模式.其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化. 2.策略模式结构 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理.策略模式通常把一个系列的算法包装到一系列…
行为型模式共11种:策略模式.模板方法模式.观察者模式.迭代子模式.责任链模式.命令模式.备忘录模式.状态模式.访问者模式.中介者模式.解释器模式. 策略模式:策略模式的决定权在用户,系统本身提供不同算法的实现,新增或者删除算法,对各种算法做封装.因此,策略模式多用在算法决策系统中,外部用户只需要决定用哪个算法即可. 模板方法模式:使用最多的Java设计模式,解释一下模板方法模式,就是指:一个抽象类中,有一个模板方法(final的方法,封装了子类遵循的算法框架),再定义1...n个方法,可以是抽…
原创文章,同步发自作者个人博客,转载请注明出处 http://www.jasongj.com/design_pattern/abstract_factory/ 抽象工厂模式解决的问题 上文<工厂方法模式>中提到,在工厂方法模式中一种工厂只能创建一种具体产品.而在抽象工厂模式中一种具体工厂可以创建多个种类的具体产品. 抽象工厂模式 抽象工厂模式介绍 抽象工厂模式(Factory Method Pattern)中,抽象工厂提供一系列创建多个抽象产品的接口,而具体的工厂负责实现具体的产品实例.抽象工…
原创文章,同步发自作者个人博客,http://www.jasongj.com/design_pattern/strategy/ 策略模式介绍 策略模式定义 策略模式(Strategy Pattern),将各种算法封装到具体的类中,作为一个抽象策略类的子类,使得它们可以互换.客户端可以自行决定使用哪种算法. 策略模式类图 策略模式类图如下 策略模式角色划分 Strategy 策略接口或者(抽象策略类),定义策略执行接口 ConcreteStrategy 具体策略类 Context 上下文类,持有具…
本文介绍了工厂方法模式的概念,优缺点,实现方式,UML类图,并介绍了工厂方法(未)遵循的OOP原则 原创文章.同步自作者个人博客 http://www.jasongj.com/design_pattern/factory_method/ 工厂方法模式解决的问题 上文<简单工厂模式不简单>中提到,简单工厂模式有如下缺点,而工厂方法模式可以解决这些问题 由于工厂类集中了所有实例的创建逻辑,这就直接导致一旦这个工厂出了问题,所有的客户端都会受到牵连. 由于简单工厂模式的产品是基于一个共同的抽象类或者…
摘要:本文介绍了简单工厂模式的概念,优缺点,实现方式,以及结合Annotation和反射的改良方案(让简单工厂模式不简单).同时介绍了简单工厂模式(未)遵循的OOP原则.最后给出了简单工厂模式在JDBC中的应用 原创文章.同步自作者个人博客http://www.jasongj.com/design_pattern/simple_factory 简单工厂模式使用案例 有一种抽象产品--汽车(Car),同时有多种具体的子类产品,如BenzCar,BMWCar,LandRoverCar.类图如下 作为…
原创文章,转载请务注明出处 OOP三大基本特性 封装 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的属性和方法只让可信的类操作,对不可信的进行信息隐藏. 继承 继承是指这样一种能力,它可以使用现有的类的所有功能,并在无需重新编写原来类的情况下对这些功能进行扩展. 多态 多态指一个类实例的相同方法在不同情形有不同的表现形式.具体来说就是不同实现类对公共接口有不同的实现方式,但这些操作可以通过相同的方式(公共接口)予以调用. OOD七大原则 面向对象设计(OOD)有七大原则(是的,你没看错…