![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
dengfanwen
这个作者很懒,什么都没留下…
展开
-
建造者模式
1、建造者模式属于创建模式的一种,一个复杂的对象通常有很多的属性,属性的展示模式可能有许多种,但是建造流程是固定的。这种情况下就可以使用多种建造者,来建造同一种类型的对象。 2、好处 方便设置属性,避免无效的设置组合。将内部复杂的构造模式封装起来。 3、jdk中的应用 AbstractStringBuilder: 抽象的建造者。 提供了两种方式的的建造方法: StringBuilder:线程不安全,方法未加锁,线程不全安。 StringBuffer: 方法都加锁,线程安全,在单线程环境下,原创 2020-07-05 14:14:47 · 122 阅读 · 0 评论 -
代理模式
1、代理模式实现的是对目标对象功能的一种增强,具体有静态代理和动态代理。 2、静态代理 package com.dengfangwen.org; interface Operator { void add(); } class Plus implements Operator { public void add() { System.out.println(" do add "); } } public class Proxy implements Op原创 2020-07-04 17:08:24 · 3705 阅读 · 0 评论 -
责任链模式
1、责任链模式是适用于对一个对象的链式加工处理,在处理的链中可以随时按需终止。非常使用处理http请求。 2、实现方法 先看在java扩展包中servert定义的责任链接口。 public interface FilterChain { //request:http请求 response: http响应 public void doFilter(ServletRequest request, ServletResponse response) throws原创 2020-07-04 14:34:39 · 140 阅读 · 0 评论 -
单例模式
1、适用场景 系统中只需要单个对象,例如jdk中Runtime; 2、好处 创建多个资源,既浪费内存资源,也增加了创建对象和回收对象的时间。 3、实现方式 3.1 先看下Runtime的实现方式 public class Runtime { //Runtime类加载的直接创建了Runtime 对象 private static Runtime currentRuntime = new Runtime(); /** * Returns the runtime原创 2020-07-04 13:27:34 · 79 阅读 · 0 评论