我是靠谱客的博主 强健白开水,最近开发中收集的这篇文章主要介绍java23种设计模式(暂时只有简单的几种)单例模式什么是工厂模式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

单例模式

单个实例,一个程序中,该类的对象只允许产生一个。

  1. 外界不能随便new(构造方法私有化)
  2. 提供公共的获取对象方式 静态的
  3. new 的动作 只能一次!!!静态变量随着类的加载 初始化,初始化一次

饿汉式

只要类加载,对象就产生,无论是否使用

多线程使用没有问题

package com.it.single;
/*
        如何完成单例

        1:私有构造方法
        2:定义静态变量  完成初始化
        3:提供公共的静态的获取方法

      饿汉式:
         只要类加载了,这个对象就产生了。
         不管别人用不用。

      多线程使用没有问题。
 */
public class Single {
    //定义静态变量
    private static Single single= new Single();

//    私有了构造
    private Single(){}

    //提供公共的访问方式  静态的
    public static Single newInstance(){

        return single;
    }
}

懒汉式

package com.it.single2;
/*

    饿汉式
        类一加载就创建了对象。

        浪费内存。
        延迟加载。用的时候再创建。

     懒汉式
        延迟对象的产生
 */
public class Single {
    //定义静态变量
    private static Single single = null;

//    私有了构造
    private Single(){}

    //提供公共的访问方式  静态的
    public  static Single newInstance(){

        //   判断该对象是否已经创建了
        if(single==null){
            single = new Single();
        }
        return single;
    }
}

线程安全的懒汉式

package com.it.single3;

public class Single {
    //定义静态变量
    private static Single single ;

//    私有了构造
    private Single(){}

    //提供公共的访问方式  静态的
    public   static Single newInstance(){

        if(single==null){
            final Single s = new Single();
        }
       //为了提高效率加一个 非空判断
       if(single==null){
           synchronized (Single.class){
               //   判断该对象是否已经创建了
               if(single==null){
                   single = new Single();
               }
           }
       }

        return single;
    }
}

什么是工厂模式

工厂模式

什么是工厂模式

1.工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
2.在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,是通过使用一个共同的接口来指向新创建的对象。

栗子

您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。

优缺点

优点: 1、一个调用者想创建一个对象,只要知道其名称就可以了。 2、扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3、屏蔽产品的具体实现,调用者只关心产品的接口。
缺点:每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。这并不是什么好事。

工厂模式一般都是创建一个产品,注重的是把这个产品创建出来就行,只要创建出来,不关心这个产品的组成部分。从 代码上看,工厂模式就是一个方法,用这个方法就能生产出产品。

在这之后过了大约30万年,物质和能量开始形成复杂的结构,称为原子,再进一步构成分子。至于这些原子和分子的故事以及它们如何互动,就成了化学。

人类简史

最后

以上就是强健白开水为你收集整理的java23种设计模式(暂时只有简单的几种)单例模式什么是工厂模式的全部内容,希望文章能够帮你解决java23种设计模式(暂时只有简单的几种)单例模式什么是工厂模式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部