`

单例 延迟

 
阅读更多

public class Single {
    private int id;
   
    private Single(){
        System.out.println("init.....");
    }
    private static class FooHolder {
        static final Single foo = new Single();
        static {
            foo.id=3;
            System.out.println("init id................");
        }
    }

    public static Single getFoo() {
        return FooHolder.foo;
    }
   
    public static void main(String[] args) throws Exception {
        Class.forName("Single");
        System.out.println("---------------");
        Single s=Single.getFoo();
        System.out.println("1111111111111111111111111");
    }
}

分享到:
评论

相关推荐

    几种单例模式

    懒汉式单例延迟了对象的创建,只有在第一次调用`getInstance`时才创建实例。但这种方式在多线程环境下会出现多个实例,线程不安全。 ### 4. 懒汉式(线程安全 - 同步方法) ```java public class Singleton { ...

    7种单例模式

    利用类加载机制保证单例,既延迟初始化,又线程安全。 ```java public class Singleton { private Singleton() {} private static class SingletonInstance { private static final Singleton INSTANCE = new ...

    C#单例模式详解 C#单例模式详解C#单例模式详解

    .NET框架提供了一个内置的Lazy类,可以方便地实现线程安全的延迟初始化单例。 ```csharp public class Singleton { private static readonly Lazy<Singleton> lazy = new Lazy(() => new Singleton()); ...

    java单例模式实例

    这种实现方式是在类被首次请求时才创建单例对象,延迟了初始化过程,从而提高了程序的启动性能。但这种方式有一个问题,即线程不安全。在多线程环境下,可能会创建多个实例。例如: ```java public class Singleton...

    单例模式(饿汉模式、懒汉模式、DCL单例模式、枚举)

    DCL单例模式结合了饿汉模式的效率和懒汉模式的延迟初始化。它在多线程环境下解决了懒汉模式的问题,避免了同步的性能开销。代码示例: ```java public class Singleton { private volatile static Singleton ...

    设计模式——单例模式

    **设计模式——单例模式** 在软件工程中,设计模式是一种在特定场景下解决常见问题的标准方案,可以被复用并提升代码质量。单例模式是设计模式中的一种,它保证一个类只有一个实例,并提供一个全局访问点。这种模式...

    Java 单例模式 工具类

    利用Java类加载机制保证单例的唯一性,线程安全且延迟初始化。 ```java public class Singleton { private Singleton() {} private static class SingletonHolder { private static final Singleton INSTANCE = ...

    单例模式详解

    ### 单例模式详解 #### 一、单例模式简介 单例模式(Singleton Pattern)是一种常用的软件设计模式,属于创建型模式之一。其目的是确保某个类只有一个实例,并提供一个全局访问点。单例模式的核心在于确保在系统...

    五种单例模式

    懒汉式单例在类第一次被请求时才进行实例化,延迟了实例化的时间。但这种方式在多线程环境下可能存在问题,需要进行同步处理。 ```java public class Singleton { private static Singleton instance; private ...

    Java单例类

    懒汉子式单例是一种延迟加载的单例模式实现方式。其特点是:只有在需要使用对象的时候才实例化对象,并且使用synchronized关键字来保证线程安全。代码实现如下: ```java public class LazySingle { private static...

    Android单例模式

    懒汉式单例模式的特点是在第一次使用时才进行实例化,这种方式的好处是延迟加载,节省内存空间;缺点是如果处理不当可能会导致多线程环境下的并发问题。 ##### 实现代码示例 ```java public class Singleton { ...

    单例模式详解~~单例模式详解~~

    单例模式是一种设计模式,它的...总的来说,单例模式的实现需要考虑线程安全、性能、延迟初始化等多种因素。选择哪种实现方式取决于具体的应用场景和需求。理解并正确使用单例模式对于构建高效、稳定的系统至关重要。

    Java实现多种单例模式

    这种方式延迟了单例对象的初始化,直到第一次被请求时。例如,`SingleInstance1.java`可能就实现了这种方式。代码通常包含一个私有构造函数,一个私有的静态单例对象和一个公共的静态获取单例的方法。这种方法在多...

    使用单例模式创建学生管理系统(饿汉式、懒汉式)

    懒汉式单例则是在第一次被请求时才进行实例化,这样可以延迟实例的创建,提高系统效率。但是,如果不进行同步控制,懒汉式在多线程环境下可能会创建多个实例,因此通常采用双重检查锁定(Double-Checked Locking,...

    Java的单例设计模式

    单例设计模式是软件设计模式中的经典模式之一,它的核心思想是确保一个类只有一个实例,并提供全局访问点。这种模式在Java中广泛应用于系统配置、线程池、缓存管理等场景,因为这些场景通常只需要一个共享的全局对象...

    单例模式(Singleton)的6种实现

    懒汉式单例模式延迟了单例实例的创建,直到第一次被引用时才创建。这种实现方式的优点是按需创建,节省资源。但是懒汉式在多线程环境下可能会产生多个实例,因此需要使用同步机制来解决多线程问题。 3. 双重检查...

    设计模式之单例模式(结合工厂模式)

    单例模式是软件设计模式中的一种经典模式,它保证了类只有一个实例存在,并提供一个全局访问点。在Java等面向对象编程语言中,单例模式常用于管理共享资源,如数据库连接池、线程池或者配置文件等。结合工厂模式,...

    几种单例模式demo

    利用Java类加载机制保证单例的唯一性,线程安全且延迟初始化。 ```java public class Singleton { private Singleton() {} private static class SingletonHolder { private static final Singleton INSTANCE ...

    单例模式各种实现方式

    延迟初始化,只有在第一次调用`getInstance`时才创建单例,但这种方式在多线程环境下不安全。 ```java public class Singleton { private static Singleton instance; private Singleton() {} public static ...

Global site tag (gtag.js) - Google Analytics