设计模式-单例模式-饿汉单例与懒汉单例.

简介: package 单例模式;public class HungerSingleton { public static void main(String[] args) { HungerPunker hp = HungerPunker.
package 单例模式;

public class HungerSingleton {

    public static void main(String[] args) {

        HungerPunker hp = HungerPunker.getHP();
        HungerPunker hp1 = HungerPunker.getHP();
        System.out.println(hp);
        System.out.println(hp1);
    }

}


//another class
class HungerPunker{

   private HungerPunker(){

}
private static final HungerPunker hp = new HungerPunker(); public static HungerPunker getHP() { return hp; } }

 

 

package 单例模式;

public class LazySingleton {

    public static void main(String[] args) {

        // get the Lazy! instance!
        LazyPunker lp = LazyPunker.getLP();
        LazyPunker lp1 = LazyPunker.getLP();
        System.out.println(lp);
        System.out.println(lp1);
    }

}

// another class the LazyPunker~
class LazyPunker {

private LazyPunker(){

}
private static LazyPunker lp; public synchronized static LazyPunker getLP() { if (lp == null) { lp = new LazyPunker(); } return lp; } }

 

最近看<重构>这本书,原因是觉得代码打到一定程度之后会变得臃肿复杂,难以理解,如果没有一种好的设计模式,好的规范来框起来,

难免会变得没法去查看,更别说维护了.

关于设计模式还有很多书.

这次先贴上饿汉与懒汉的单例模式.

不知道哪位大仙取的这个名字...

将编程看作是一门艺术,而不单单是个技术。 敲打的英文字符是我的黑白琴键, 思维图纸画出的是我编写的五线谱。 当美妙的华章响起,现实通往二进制的大门即将被打开。
相关文章
|
9天前
|
设计模式 安全 Java
设计模式-单例 Singleton
设计模式-单例 Singleton
15 1
|
12天前
|
设计模式 安全 Java
【JAVA学习之路 | 基础篇】单例设计模式
【JAVA学习之路 | 基础篇】单例设计模式
|
18天前
|
设计模式 SQL 安全
Java一分钟之-设计模式:单例模式的实现
【5月更文挑战第16天】本文介绍了单例模式的四种实现方式:饿汉式(静态初始化)、懒汉式(双检锁)、静态内部类和枚举单例,以及相关问题和解决方法。关注线程安全、反射攻击、序列化、生命周期和测试性,选择合适的实现方式以确保代码质量。了解单例模式的优缺点,谨慎使用,提升设计效率。
30 3
|
19天前
|
设计模式
【设计模式】单例模式的三种实现方式
【设计模式】单例模式的三种实现方式
14 1
|
19天前
|
设计模式 安全 Java
【设计模式学习】单例模式和工厂模式
【设计模式学习】单例模式和工厂模式
|
19天前
|
设计模式 安全 Java
|
19天前
|
设计模式 存储 安全
Java 设计模式:深入单例模式的理解与应用
【4月更文挑战第27天】单例模式是一种常用的设计模式,在 Java 开发中扮演着重要角色。此模式的主要目的是保证一个类只有一个实例,并提供一个全局访问点。
33 0
|
11天前
|
设计模式 Java API
【设计模式】JAVA Design Patterns——Combinator(功能模式)
【设计模式】JAVA Design Patterns——Combinator(功能模式)
|
12天前
|
设计模式 监控 Java
【设计模式】JAVA Design Patterns——Circuit Breaker(断路器模式)
【设计模式】JAVA Design Patterns——Circuit Breaker(断路器模式)
|
12天前
|
设计模式 Java 程序员
【设计模式】JAVA Design Patterns——Bytecode(字节码模式)
【设计模式】JAVA Design Patterns——Bytecode(字节码模式)