代老师的博客 https://github.com/daichangya

Java设计模式——Reactor模式

Reactor模式 一、Web请求处理架构概述 在处理Web请求时,主要存在两种体系结构:thread - based architecture(基于线程)和event - driven architecture(事件驱动)。 (一)Thread - based Architecture(基于线程)

daicy daicy 发布于 2020-10-30

JDK源码分析——动态代理源码(Proxy类)

读源码,怕过两天又忘记了,还是记录下吧.. 动态代理最重要的实现就是Proxy.newInstance ,那我们直接看这个方法 public static Object newProxyInstance(ClassLoader loader, Class[] interfaces, InvocationHandler h)//这里有三个参数,第一个是传入classl

daicy daicy 发布于 2019-04-17

Java 设计模式 — 抽象工厂模式

简单工厂模式是类的创建模式,又叫静态工厂方法(static factory method),负责将大量有共同接口的类实例化,可以动态的决定将哪个类实例化,不必事先知道要实例化哪个类。 顾名思义,就像是工厂的功能,客户需要什么样的产品,工厂就能生产。但是产品之间应该有某种关联性,即有共同的接口,不能让一个工厂去生产火腿肠。工厂模式中创建是不同类的对象。 工厂的老板可以根据客户不同的需要进

daicy daicy 发布于 2019-04-17

《JAVA与模式》之解释器模式

在阎宏博士的《JAVA与模式》一书中开头是这样描述解释器(Interpreter)模式的:   解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。 解释器模式的结构   下面就以一个示意性的系统为例,讨论解释器模式的结构。系统的结构图如下所示:

daicy daicy 发布于 2019-04-17

JDK源码分析之Set类详解——适配器模式的应用

JDK源码中Set类是我们开发过程中经常用到的,那么本文将会向你介绍JDK源码中Set类的一些构造,使我们在编程中高效的应用。 JDK源码分析Set类,因为Set类是经常要用到的,那我们知道JDK源码中Set类在其中不可以有相同的元素,那么判断这个元素是否相同是如何实现的呢,我们看下下面这张图: 对JDK源码分析之Set类在这张类图上,

daicy daicy 发布于 2019-04-17

Java单例对象同步问题探讨

在本文中,作者向大家讲述了Single Call 模式的原理,同时也介绍了Single Call 模式的实现问题。

daicy daicy 发布于 2019-04-17

Tomcat 系统架构与设计模式

门面设计模式 门面设计模式在 Tomcat 中有多处使用,在 Request 和 Response 对象封装中、Standard Wrapper 到 ServletConfig 封装中、ApplicationContext 到 ServletContext 封装中等都用到了这种设计模式。 门面设计模

daicy daicy 发布于 2019-04-17

通过Java Swing看透MVC设计模式

通过Java Swing看透MVC设计模式 一、引言 (一)GUI设计思想的启发 在现实世界中,一个简单的电脑键盘按键,如按钮,就体现了GUI设计的规则。它由动作特性(如可被按下)和表现(如代表的字母)两部分构成。这种设计思想可应用于软件开发,例如Model/View/Controller(MVC)

daicy daicy 发布于 2019-04-17

单例模式中为什么用枚举更好

枚举单例(Enum Singleton)是实现单例模式的一种新方式,尽管单例模式在java中已经存在很长时间了,但是枚举单例相对来说是一种比较新的概念,枚举这个特性是在Java5才出现的,这篇文章主要讲解关于为什么我们应该使用枚举来实现单例模式,它与传统方式实现的单例模式

daicy daicy 发布于 2019-04-17

Java设计模式——装饰器(Decorator)模式

一、装饰器模式概述 Decorator设计模式属于典型的结构型模式(在GOF的模式分类中,模式分为创建型模式、结构型模式、行为模式三种)。其核心目的在于动态地为对象添加额外功能,这也是理解装饰器模式的关键所在。正如GOF在《Element of reusable Object - Oriented

daicy daicy 发布于 2019-04-17

Java设计模式——策略、代理模式

一、策略模式 (一)策略模式概述 定义与概念 策略模式属于对象行为模型,其核心思想是针对一组算法,将每个算法封装到具有共同接口的独立类中,从而实现它们之间的互相替换。该模式将算法的责任和算法本身分隔开,委派给不同的对象管理,把算法包装到一系列的策略类里面,作为一个抽象策略类的子类。简单来说,就是准备

daicy daicy 发布于 2019-04-17

Java源码分析:深入探讨Iterator模式——迭代器模式

java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。 下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的实现原理。 本文讨论的源代码版本是JDK 1.4.2,因为JDK 1.5在java.util中使用了很

daicy daicy 发布于 2019-04-17