Java设计模式
简单程序员_Simple
这个作者很懒,什么都没留下…
展开
-
【JAVA设计模式】简单工厂模式
简单工厂模式原创 2018-12-26 15:26:41 · 1825 阅读 · 0 评论 -
【JAVA设计模式】组合模式
UML类图: 组合抽象类: package com.jthao.design.des.composite; public abstract class Company { public String name; public Company(String name) { this.name = name; } abstract void add(Company company...原创 2018-12-27 23:06:04 · 273 阅读 · 0 评论 -
【JAVA设计模式】迭代器模式
UML类图: 聚焦抽象类: package com.jthao.design.des.iterator; public interface Container { public Iterator getIterator(); } 迭代抽象类: package com.jthao.design.des.iterator; public interface Iterator { pu...原创 2018-12-27 23:06:14 · 258 阅读 · 0 评论 -
【JAVA设计模式】单例模式
UML类图: 懒汉,线程不安全: package com.jthao.design.des.singleton; /** * 懒汉:线程不安全,这种写法lazy loading很明显,但是致命的是在多线程不能正常工作 */ public class Singleton1 { private static Singleton1 instance; private Singleton1...原创 2018-12-27 23:06:25 · 817 阅读 · 0 评论 -
【JAVA设计模式】桥接模式
UML类图: 抽象类: package com.jthao.design.des.bridge; public abstract class HandBrand { protected HandSoft handSoft; public void setHandSoft(HandSoft handSoft) { this.handSoft = handSoft; } publ...原创 2018-12-27 23:06:33 · 284 阅读 · 0 评论 -
【JAVA设计模式】命令模式
UML类图: 命令接口类: package com.jthao.design.des.command; public abstract class Command { protected Barbecure barbecure; public Command(Barbecure barbecure) { this.barbecure = barbecure; } public...原创 2018-12-27 23:06:43 · 290 阅读 · 0 评论 -
【JAVA设计模式】职责链模式
UML类图: 抽象职责类: package com.jthao.design.des.chain; public abstract class Manager { protected String name; protected Manager superior; public Manager(String name) { this.name = name; } publ...原创 2018-12-27 23:06:56 · 295 阅读 · 0 评论 -
【JAVA设计模式】中介者模式
UML类图: 抽象同事类: package com.jthao.design.des.mediator; public abstract class Colleague { protected Mediator mediator; public void setMediator(Mediator mediator) { this.mediator = mediator; } p...原创 2018-12-28 09:01:40 · 300 阅读 · 0 评论 -
【JAVA设计模式】享元模式
UML类图: 享元抽象类: package com.jthao.design.des.flyweight; public abstract class FlyWeight { protected String charStr = ""; protected int fontSize; protected abstract void operator(int fontSize);原创 2018-12-28 09:02:01 · 266 阅读 · 0 评论 -
【JAVA设计模式】解释器模式
UML类图: 抽象操作类: package com.jthao.design.des.expression_; public abstract class Expression { public void Interpret(PlayContext context) { if (context.getText().length() == 0) { return; } else ...原创 2018-12-28 09:02:06 · 265 阅读 · 0 评论 -
【JAVA设计模式】访问者模式
UML类图: 访问抽象类: package com.jthao.design.des.visitor; public interface AccountBookViewer { // 查看消费的单子 void view(ConsumeBill bill); // 查看收入的单子 void view(IncomeBill bill); } 具体访问类A: package com....原创 2018-12-31 22:47:27 · 369 阅读 · 0 评论 -
【JAVA设计模式】设计六大原则
- 单一职责原则(SRP) 定义:就一个类而言,应该仅有一个引起它变化的原因。 从这句定义我们很难理解它的含义,通俗讲就是我们不要让一个类承担过多的职责。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到破坏。 比如我经常看到一些Android开发在Activity中写Bean文件,网...原创 2018-12-28 09:02:18 · 1868 阅读 · 0 评论 -
【JAVA设计模式】备忘录模式
UML类图: Originator类: package com.jthao.design.des.memento; public class Originator { private String state; public Memento createMemento() { return new Memento(state); } public void setMem...原创 2018-12-27 23:05:53 · 283 阅读 · 0 评论 -
【JAVA设计模式】适配器模式
UML类图: 对外接口类: package com.jthao.design.des.adapter; public class Target { public void request() { System.out.println("普通请求"); } } 目标接口类: package com.jthao.design.des.原创 2018-12-27 23:05:43 · 405 阅读 · 0 评论 -
【JAVA设计模式】策略模式
UML类图: 算法父类: package com.jthao.design.des.strategy; public abstract class CashSuper { public abstract double acceptCash(double money); } 算法类A: package com.jthao.design.des.strategy; public clas...原创 2018-12-26 16:18:02 · 1001 阅读 · 1 评论 -
【JAVA设计模式】装饰模式
UML类图: 被装饰对象: package com.jthao.design.des.decorator; public class Person { public Person() { } private String name; public Person(String name) { this.name = name; } public void show() ...原创 2018-12-26 16:32:10 · 737 阅读 · 0 评论 -
【JAVA设计模式】代理模式
UML类图: 接口类: package com.jthao.design.des.proxy; public interface IGiveGift { void giveDolls(); void giveFlowers(); void giveChocolate(); } 真实操作类: package com.jthao.design.des.proxy; public cl...原创 2018-12-26 16:51:16 · 718 阅读 · 0 评论 -
【JAVA设计模式】工厂方法模式
UML类图: 工厂接口类: package com.jthao.design.des.factorymethod; public interface IFactory { public LeiFeng createLeifeng(); } 具体工厂类A: package com.jthao.design.des.factorymethod; public class Voluntee...原创 2018-12-26 16:59:39 · 705 阅读 · 0 评论 -
【JAVA设计模式】原型模式
UML类图: 原型类: package com.jthao.design.des.prototype; import java.util.ArrayList; import java.util.List; public class Resume implements Cloneable { private String name; private List<String>...原创 2018-12-26 17:07:50 · 415 阅读 · 0 评论 -
【JAVA设计模式】模板方法模式
UML类图: 模板方法父类: package com.jthao.design.des.templatemethod; public abstract class AbstractClass { protected abstract void doAnyThing(); protected abstract void doSomeThing(); protected void ho...原创 2018-12-26 17:19:09 · 374 阅读 · 0 评论 -
【JAVA设计模式】外观模式
UML类图: 包装类(外部调用): package com.jthao.design.des.facade; public class Facade { public SubSystemOne subSystemOne; public SubSystemTwo subSystemTwo; public SubSystemThree subSystemThree; public ...原创 2018-12-26 17:26:41 · 275 阅读 · 0 评论 -
【JAVA设计模式】建造者模式
UML类图: 抽象父类: package com.jthao.design.des.builder; public abstract class Builder { public abstract void partA(); public abstract void partB(); public abstract Product getResult(); } 构造类: pac...原创 2018-12-26 17:36:09 · 415 阅读 · 0 评论 -
【JAVA设计模式】观察者模式
UML类图: 抽象观察者类: package com.jthao.design.des.observer; public abstract class Observer { public abstract void update(); } 具体观察者类: package com.jthao.design.des.observer; public class ConcreteObse...原创 2018-12-26 21:33:11 · 488 阅读 · 0 评论 -
【JAVA设计模式】抽象工厂模式
UML类图: 抽象工厂类: package com.jthao.design.des.abstractfactory; public interface IFactory { IUser createUser(); IDept createDept(); } 具体工厂类A: package com.jthao.design.des.abstractfactory; public...原创 2018-12-27 23:05:01 · 526 阅读 · 0 评论 -
【JAVA设计模式】状态模式
UML类图: 抽象状态类: package com.jthao.design.des.states; public abstract class State { public abstract void handle(Context context); } 具体状态实现类A: package com.jthao.design.des.states; public class Conc...原创 2018-12-27 23:05:33 · 307 阅读 · 0 评论 -
【JAVA设计模式】序章
传送门 【JAVA设计模式】设计六大原则 【JAVA设计模式】简单工厂模式 【JAVA设计模式】策略模式 【JAVA设计模式】装饰模式 【JAVA设计模式】代理模式 【JAVA设计模式】工厂方法模式 【JAVA设计模式】原型模式 【JAVA设计模式】模板方法模式 【JAVA设计模式】外观模式 【JAVA设计模式】建造者模式 【JAVA设计模式】观察者模式 【JAVA设计模式】抽象工厂模式 【JA...原创 2018-12-28 09:36:29 · 3191 阅读 · 1 评论