首页 > 其他分享 >单例代理模式之懒汉模式

单例代理模式之懒汉模式

时间:2023-03-17 15:44:45浏览次数:43  
标签:String hamburgName 模式 private 单例 Hamburg flavor 懒汉

/**
 * @Nyapii
 */
public class SingleTon1 {
    //这是饿汉,我饿怕了,不论在什么情况下,我都要一个属于我的汉堡

    public static void main(String[] args) {
        System.out.println(Hamburg.getMyHamburg());
    }
}

class Hamburg{
    // 汉堡风味、汉堡名称
    private String flavor;
    private String hamburgName;

    // 汉堡的构造方法,给属性赋值~
    private Hamburg(String flavor, String hamburgName) {
        this.flavor = flavor;
        this.hamburgName = hamburgName;
    }
    // ↑ ↓ 单例顾名思义,只有一个实例。这个实例我一开始就创建好了,并且其他模块不能创建该实例
    private static Hamburg hamburg = new Hamburg("spicy","魔鬼牛肉堡");

    // 单例创建完毕,对外只提供一个调用方法
    public static Hamburg getMyHamburg(){
        return hamburg;
    }

    // 重写toString,不重写返回的是对象地址
    @Override
    public String toString() {
        return  "风味:'" + flavor + '\'' +
                ", 汉堡名:'" + hamburgName + '\'';
    }
}

运行结果:

 

 再测试一下,是否是单例:

 

结果如下:

 

 

 

这就是懒汉模式,你懂了吗  ᐕ)?

标签:String,hamburgName,模式,private,单例,Hamburg,flavor,懒汉
From: https://www.cnblogs.com/Nyapii/p/17227021.html

相关文章

  • python __new__方法与单例模式
    1、new()至少要有一个参数cls,代表当前类,此参数在实例时由python解释器自动识别,2、new()必须要有返回值,返回实例化出来的实例,这点在自己实现__new__时要特别注意,可以......
  • uniapp小程序工厂模式示例
    //appBusinessHandle.jsconstdoSomeThing=()=>{...}/*小程序启动时需要处理的个性逻辑*/constonLaunchHandle={}/*小程序显示时需要处理的个性逻辑*/constonS......
  • 代理模式
    动态代理动态的生成代理对象,对满足条件的目标对象皆可以生成代理代理对象,没有静态代理一个目标类一个代理类的问题解耦合 JDK动态代理需要目标类有实现接口代理类与......
  • 观察者模式和发布订阅模式
    首先我们必须清楚这两种模式都是设计模式,而不是某种语言的专属;观察者模式(Observer)概念理解观察者模式是一种一对多的依赖关系的行为设计模式,让多个观察者对象监听一......
  • 设计模式——享元模式
    个人理解:抽离公共方法所需的属性进行共享;不需要的字段抽离到外面进行管理。1、享元模式享元模式(FlyweightPattern)主要用于减少创建对象的数量,以减少内存占用和提高性能......
  • Nginx负载均衡的三种模式
    1、轮询模式轮询模式是根据访问时间,之一分配到不同的后端服务器,并且后端服务器如果down掉了,Nginx还会自动剔除这个失效的地址,适合服务器配置相当,无状态且短平快的服务......
  • 设计模式5——模板方法模式
    1、定义模板方法模式由两部分结构组成,第一部分是抽象父类,第二部分是具体的实现子类。2、核心在抽象父类中封装子类的算法框架,它的init方法可作为一个算法的模板,指导子......
  • 请你谈谈单例模式的优缺点,注意事项,使用场景
    单例模式(Singleton),是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个全局对象,这样有利于我们协调系统整......
  • 设计模式(二十三)----行为型模式之中介者模式
    1概述一般来说,同事类之间的关系是比较复杂的,多个同事类之间互相关联时,他们之间的关系会呈现为复杂的网状结构,这是一种过度耦合的架构,即不利于类的复用,也不稳定。例如在下......
  • 16.(行为型模式)java设计模式之责任链模式
    一、什么是责任链模式模式(ChainofResponsibility)客户端发出一个请求,链上的对象都有机会来处理这一请求,而客户端不需要知道谁是具体的处理对象。让多个对象都有机会处......