Java设计模式之所有创建型模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java设计模式之所有创建型模式相关的知识,希望对你有一定的参考价值。
建造者模式
分离了对组件的单独构造和装配 从而可以构造出复杂的对象
单例模式:保证一个类只有一个实例并且提供一个访问该实例的全局访问点 构造函数私有化 提供一个public访问方法。
单例模式种类:饿汉式、懒汉式、双重锁、静态内部类、枚举
饿汉式、双重锁、枚举 不能延迟加载 可以延迟加载懒汉式、静态内部类 其中静态内部类效果最佳 线程安全,调用效率高,并且实现了延时加载!
静态内部类代码如下
public class SingletonDemo { private static class SingletonClassInstance { private static final SingletonDemo instance = new SingletonDemo(); } private SingletonDemo(){ } //方法没有同步,调用效率高! public static SingletonDemo getInstance(){ return SingletonClassInstance.instance; } }
工厂模式(简单工厂)
用来生产同一等级结构中的任意产品 对于新的产品 需要修改已有代码
不符合开闭原则 框架中经常用到
spring 创建bean factory都使用
工厂方法
用来生产同一等级结构中的固定产品 支持增加任意产品
抽象工厂
用来生产不同产品族的全部产品
抽象的产品 产品族可以新增 产品无能无力
原型模式(复制、克隆)
需要实现Cloneable 接口 使用clone()方法可以进行复制 如文件流的close()方法
通过new产生一个对象需要非常繁琐的数据准备或访问权限 如果需要短时间创建大量对象 并且new的过程比较耗时 使用原型模式
建造者模式
分离了对组件的单独构造和装配 从而可以构造出复杂的对象
以上是关于Java设计模式之所有创建型模式的主要内容,如果未能解决你的问题,请参考以下文章