:::info 💡 根据 遗忘曲线:如果没有记录和回顾,6天后便会忘记75%的内容
读书笔记正是帮助你记录和回顾的工具,不必拘泥于形式,其核心是:记录、翻看、思考 :::

模式 介绍 例子
单例模式 确保整个应用中只有一个实例
抽象工厂模式
建造者模式·
工厂模式 专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类
原型模式

思维导图

单例模式

创建型模式 - 图1

主要实现方式

饿汉式单例模式

  1. public class SingleDesigned{
  2. private static SingleDesigned singledesigned=null;
  3. private SingleDesigned(){
  4. }
  5. public static SingleDesigned getSingleDesigned(){
  6. if(singleDesigned==null){
  7. synchronized (SingleDesigned.class){
  8. singledesigned=new SingleDesigned();
  9. }
  10. }
  11. return singledesigned;
  12. }
  13. }

懒汉模式

  1. public class SingleDesigned{
  2. private SingleDesigned singleDesigned;
  3. private SingleDesigned(){}
  4. //获取
  5. public SingleDesigned getsingledesigned(){
  6. if(singleDesigned==null){
  7. synchronized(SingledDesigned.class){
  8. if(singleDesigned==null){
  9. singleDesigned=new SingleDesigned();
  10. }
  11. }
  12. }
  13. return singleDesigned;
  14. }

创建型模式 - 图2

工厂模式

静态工厂模式

基本实现就是类+静态方法

  1. public class Factory{
  2. public static Bean getBean(){
  3. return new Bean();
  4. }
  5. }

简单工厂模式

主要就是通过这个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类
,好像就是我要一个东西,这个东西我没有能力去创建,所以我就要我想要的东西告诉能做出这个东西的人,让他给我生产。

  1. public Bean createFactory(type 条件){
  2. Bean bean=null;
  3. switch(type){
  4. case 条件:
  5. bean=new SonBean();
  6. break;
  7. case 条件:
  8. bean=new Son2Bean();
  9. break;
  10. default:
  11. bean=new DefaultBean();
  12. break;
  13. }
  14. return bean;
  15. }

工厂方法模式

实现步骤:

  1. 定义一个接口