设计模式
zmt0104
这个作者很懒,什么都没留下…
展开
-
工厂模式
简单工厂模式 案例:披萨点餐 package com.zm.simplefactory.pizza; public abstract class Pizza { String name; public Pizza() { } public Pizza(String name) { super(); this.name = name; } public Stri...原创 2019-11-09 17:36:21 · 131 阅读 · 0 评论 -
如何破解单例模式,如何防止破解
1. 破解单例模式 可以通过反射和反序列化的方式来破解除枚举方式以外的单例模式。 2. 如何防止破解 2.1 对于反序列化方式 在单例模式下,添加一个readResolve()方法,在方法体里返回这个对象。在反序列化时,会自动调用这个方法,从而避免了生成新的对象。 示例: public class Singleton implements Serializable { privat...原创 2019-10-31 22:27:46 · 436 阅读 · 0 评论 -
单例模式
1. 什么是单例模式 就是采取一定的方法保证在整个软件系统中,对某个类只存在一个实例对象,并且该类只提供一个取得其对象实例的方法。 1.1 作用 保证在整个应用程序的声明周期中,任何一个时刻,单例类的实例都只存在一个(也可以不存在)。 1.2 设计要求 单例类的构造函数必须为私有,同时单例类必须提供一个全局访问点。 1.3 单例模式UML图 1.4 使用场景 需要频繁进行创建和销...原创 2019-10-31 18:27:52 · 53 阅读 · 0 评论