单例模式代码简单演示

复制代码
package org.singletonBean;

public class PrivateBean {
    public static PrivateBean singletonBean = new PrivateBean();
    private PrivateBean(){
    }

}

可以看到上面演示了一个简单的单例模式的代码设计,通过私有构造器+静态属性,对一个类的实例进行了全局访问限制,来确保项目中这个类对应的实例只会在堆内存中开辟一块空间

下面是main的方法调用演示

复制代码
package org.singletonBean;

public class Test {
    public static void main(String[] args) {
        PrivateBean p1 = PrivateBean.singletonBean;
        System.out.println(p1);
        PrivateBean p2 = PrivateBean.singletonBean;
        System.out.println(p2);
    }
}

打印结果

复制代码
org.singletonBean.PrivateBean@340f438e
org.singletonBean.PrivateBean@340f438e

可以看到两份内存地址是相同的,并且由于static,我们当前设计的一个简单的单例模式已经成功了

相关推荐
ac-er88881 小时前
Yii框架中的队列:如何实现异步操作
android·开发语言·php
马船长1 小时前
青少年CTF练习平台 PHP的后门
开发语言·php
枫叶落雨2221 小时前
04JavaWeb——Maven-SpringBootWeb入门
java·maven
m0_748232392 小时前
SpringMVC新版本踩坑[已解决]
java
码农小灰2 小时前
Spring MVC中HandlerInterceptor和Filter的区别
java·spring·mvc
hefaxiang2 小时前
【C++】函数重载
开发语言·c++·算法
乔木剑衣2 小时前
Java集合学习:HashMap的原理
java·学习·哈希算法·集合
落幕3 小时前
C语言-构造数据类型
c语言·开发语言
勤又氪猿3 小时前
【问题】Qt c++ 界面 lineEdit、comboBox、tableWidget.... SIGSEGV错误
开发语言·c++·qt
专职3 小时前
spring boot中实现手动分页
java·spring boot·后端