设计模式
文章平均质量分 83
设计模式学习
拜见老天師
记录的目的是帮助自己回忆
展开
-
装饰者模式(Decorator Pattern)
参考《Head First Design Pattern》第二版,使用其中的例子来进行时间,首先来看看 UML 图(1)该图最上面是 Component 抽象类,是所有类基类,下面的每一个类都是它的子类(2)左边的 ConcreteComponent 是积累的具体类,这些类是真正需要被修饰的类;(3)右边 Decorator 是装饰器的父类,所有装饰器都需要继承这个类(3.1)这个类需要继承 Component 基类。原创 2023-12-12 09:30:48 · 172 阅读 · 0 评论 -
单例模式(Singleton Pattern)
单例模式就是保证运行过程中某个类的实例对象只有一个,例如在 JavaWeb 程序中,service 层的对象其实主要就是提供服务,全局获取一个对象足矣,一般情况下不需要重复定义对象。但是我最初学习的时候也是,在每个 controller 中 new service 层的对象实例,这样会造成资源的浪费;单例模式属于创造型模式,用于实例化对象。(1)私有化构造器:使得该类只能在内部实例化,外部不能实例化;(2)保证内部能实例化出一个对象,并且仅实例化一次;(3)考虑线程安全,需要注意加锁;原创 2023-12-06 16:21:30 · 472 阅读 · 1 评论 -
原型模式(Prototype Pattern)
浅拷贝和深拷贝的主要区别就是对引用类型的变量的处理(1)浅拷贝:引用类型的变量拷贝前后指向同一个对象;(2)深拷贝:引用类型的变量拷贝后指向新的对象;(3)核心:重写 clone 方法时对引用类型变量的处理不同;Java深入理解深拷贝和浅拷贝区别_java深拷贝浅拷贝-CSDN博客(1)原型设计模式的思想就是拿到一个对象,将该对象当作一个标准,然后使用 clone 方法不断重复的去复制这个标准(原型对象),从而得到大量同类型的对象,在游戏等等场景中应用广泛。原创 2023-12-06 13:54:04 · 807 阅读 · 0 评论