您的位置:首页 > 健康 > 美食 > 湖南建设网招标公告_广西模板厂有哪些厂家_免费广告制作软件_软文写作500字

湖南建设网招标公告_广西模板厂有哪些厂家_免费广告制作软件_软文写作500字

2025/3/9 21:47:27 来源:https://blog.csdn.net/m0_57921272/article/details/142953188  浏览:    关键词:湖南建设网招标公告_广西模板厂有哪些厂家_免费广告制作软件_软文写作500字
湖南建设网招标公告_广西模板厂有哪些厂家_免费广告制作软件_软文写作500字

单例模式的介绍

        单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

        这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。

        单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供了一个全局访问点来访问该实例。

需要注意的点:

    每个单例类只能有一个实例

    单例类必须自己创建自己的唯一实例

    单例类必须给所有的其他对象提供这一实例

    单例类的构造方法必须私有    

单例模式的实现

        单例模式有很多实现方法,主要为懒汉式和饿汉式,饿汉式为线程安全的。懒汉式不安全,以下仅仅介绍这两种方式的线程安全的实现方式

懒汉式

   采用双重检查锁+volatile 的形式,不仅保证了线程安全的前提下也提高了性能

public class Singleton  {private volatile static Singleton  singleton;private Singleton (){}public static Singleton getInstance(){if(singleton==null){synchronized (Singleton.class){if(singleton==null){singleton=new Singleton();}}}return singleton;}
}

饿汉式

      这种单例实现方式被称为“饿汉式”,因为它在类加载时就立即创建了实例。这种方式简单且线程安全,但在某些情况下可能会导致资源的浪费,因为实例在创建后可能不会被使用。

public class Singleton1 {//创建 Singleton1 的一个对象private static Singleton1 singleton1 = new Singleton1();//让构造函数为 private,这样该类就不会被实例化private Singleton1(){}//获取唯一可用的对象public static Singleton1 getSingleton1(){return singleton1;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com