• 2024-08-28单例模式 lock 多线程 双重检查锁定机制
    单例模式单例模式publicclassSingleton{//定义一个静态变量来保存类的实例privatestaticSingletonuniqueInstance;//定义一个标识确保线程同步privatestaticreadonlyobjectlocker=newobject();//定义私有构造函数,使外界不能创建该类
  • 2024-07-27常用设计模式-单例模式(Singleton pattern)
    常用设计模式-单例模式(Singletonpattern)一、单例模式目的使用单例模式第一步要了解其作用,单例理解为一个实例(oneinstance)。保证一个类只有一个它的实例。在实际开发中,如线程池,数据库连接对象等。二、实现思路为了保证oneclassoneinstance①则需要保证实例全局唯一,保
  • 2024-06-04单例
    单例模式详解及六种实现方式一、单例模式的定义单例模式确保一个类只有一个实例,并提供该实例的全局访问点。这种模式避免了频繁创建和销毁实例,从而节约系统资源。二、单例模式的设计要素私有构造函数:防止其他类创建实例。私有静态变量:存储唯一实例。公有静态方法:提供全局访
  • 2023-11-04双重校验锁实现对象单例
    uniqueInstance采用volatile关键字修饰也是很有必要的,uniqueInstance=newSingleton();这段代码其实是分为三步执行:为uniqueInstance分配内存空间初始化uniqueInstance将uniqueInstance指向分配的内存地址但是由于JVM具有指令重排的特性,执行顺序有可能变成1->3->2。
  • 2023-10-10单例模式详解
    一、单例模式的定义定义:确保一个类只有一个实例,并提供该实例的全局访问点。这样做的好处是:有些实例,全局只需要一个就够了,使用单例模式就可以避免一个全局使用的类,频繁的创建与销毁,耗费系统资源。二、单例模式的设计要素一个私有构造函数(确保只能单例类自己创建实例)一个私有静态
  • 2023-08-13单例模式
    双重锁解释双重if是需要的。如果只有一重,还是可能初始化两次valatile是要得。uniqueInstance=newSingleton();这段代码其实是分为三步执行:为uniqueInstance分配内存空间初始化uniqueInstance将uniqueInstance指向分配的内存地址但是由于JVM具有指令重排的
  • 2023-04-25单例模式
    确保一个类只有一个实例,并提供一个全局访问点///<summary>///单例模式的实现///</summary>publicclassSingleton{//定义一个静态变量来保存类的实例privatestaticSingletonuniqueInstance;//定义一个标识确保线程同步privatestaticre
  • 2023-01-06设计模式(7)--单例模式
    单例模式的意义:用到的类的对象只能有一个(线程池,缓存,打印机等硬件设备)。如果多个实例会有造成冲突、结果不一致等问题可以用静态变量来指代这个对象来实现协商一个全局变量实
  • 2022-12-15单件模式
    时间会让人成长,但是不会指明方向剖析经典的单件模式publicclassSingleton{//利用一个静态变量来记录Singleton类的唯一实例privatestaticSingletonuniq
  • 2022-11-09牛客java选择题每日打卡Day12
    牛客java选择题每日打卡Day12
  • 2022-10-09谈谈synchronized关键字
     我觉得这个关键字是一个很关键的关键字。但是刚开始学习并没有经常用到。为啥呢?业务场景所限,单机单线程下真的很少用到。那有什么用呢? 因为它是解决多线程同步的一个很
  • 2022-09-28设计模式 -- Singleton(单例模式)
    单例模式(Singleton)保证一个类仅有一个实例,并提供一个该实例的全局访问点。在软件系统中,经常有这样一个特殊的类,必须保证它们在系统中只存在一个示例,才能确保他们的逻辑
  • 2022-09-21从双重校验锁进一步理解synchronized和volatile
    并发编程中的四个问题:可见性、原子性、有序性、指令重排对于synchronized和volatile首先我们知道:synchronized可以保证原子性、有序性、可见性;volatile只能保证有序性
  • 2022-08-28单例模式的介绍
     单例模式是设计模式中常用的设计模式之一,它提供一种创建对象的方式。这种模式仅涉及一个单一的类,该类负责创建自身的对象(下面称对象为实例),同时确保只有一个对象被创