![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java设计模式
shineflowers
每个人都是独一无二的……
展开
-
Java开发中的23种设计模式详解
一、设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式转载 2014-02-13 14:14:55 · 1330 阅读 · 0 评论 -
Java实现简单的工厂模式
工厂模式 属于创建型模式 简单工厂模式 类图 通过一个工厂类,以一个条件来创建对应的对象 [java] view plaincopyprint? //业务功能 public interface ICalculation { double getResult(double numA, double n原创 2014-12-02 16:13:46 · 835 阅读 · 0 评论 -
Java 实现装饰者(Decorator)模式
在Java中,io包下的很多类就是典型的装饰者模式的体现,如: new BufferedOutputStream(OutputStream out) new BufferedInputStream(InputStream in); new PrintWriter(OutputStream out) new FilterReader(Reader in) 装原创 2014-12-02 18:32:15 · 1114 阅读 · 0 评论 -
Java 实现抽象工厂模式
抽象工厂模式 里面有几个概念:抽象工厂、实体工厂、抽象产品、实体产品 抽象工厂:定义创建产品的抽象方法 实体工厂:具体的创建哪种产品 抽象产品:一个接口或基类 实体产品:实现具体功能,或派生 类图 [java] view plaincopyprint? //抽象产品1 public int原创 2014-12-02 16:17:05 · 868 阅读 · 0 评论 -
Java 实现代理(Proxy)模式
参考链接: 类图 [java] view plaincopyprint? /** * 游戏者接口 * @author stone * */ public interface IGamePlayer { // 登录游戏 public void login(String原创 2014-12-02 16:38:44 · 1280 阅读 · 0 评论 -
Java 实现原型(Prototype)模式
[java] view plaincopyprint? public class BaseSpoon implements Cloneable {//spoon 匙, 调羹 String name; public String getName() { return name; }原创 2014-12-02 18:33:55 · 2441 阅读 · 0 评论 -
Java 实现观察者(Observer)模式
1. Java自带的实现 类图 [java] view plaincopyprint? /** * 观察目标 继承自 java.util.Observable * @author stone * */ public class UpdateObservable extends Observable原创 2014-12-02 18:30:39 · 1023 阅读 · 0 评论 -
Java 实现单例模式
[java] view plaincopyprint? public class Singleton { private static Singleton intance; private Singleton() {} public static Singleton getInstance() {原创 2014-12-02 16:06:59 · 1057 阅读 · 0 评论 -
Java实现构建者(Builder)模式
Builder模式的定义是用于构建复杂对象的一种模式,所构建的对象往往需要多步初始化或赋值才能完成。那么,在实际的开发过程中,我们哪些地方适合用到Builder模式呢?其中使用Builder模式来替代多参数构造函数是一个比较好的实践法则。 我们有时候会写这样的实现类: Student(); Student(String name); Student(String name,int age); St...原创 2019-03-27 15:00:58 · 5286 阅读 · 0 评论