单例模式代码简单演示

复制代码
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,我们当前设计的一个简单的单例模式已经成功了

相关推荐
白鲸开源12 小时前
Apache SeaTunnel Zeta Engine 的 Basic Auth 是怎么工作的?
java·vue.js·github
白鲸开源12 小时前
一文读懂DolphinScheduler插件机制:如何轻松扩展任务类型与数据源
java·架构·github
用户2986985301416 小时前
Java 实现 Word 文档文本查找与高亮标注
java·后端
宇宙之一粟17 小时前
乐企版式文件生成平台
java·后端·python
plainGeekDev18 小时前
MVC 写法 → MVVM
android·java·kotlin
SL_staff18 小时前
3周搭完MES系统:JVS低代码+JVS-IoT物联网的实战记录
java·前端·低代码
MacroZheng18 小时前
斩获20w star!Claude Code最强插件,AI编程必备!
java·人工智能·后端
唐青枫20 小时前
Java Spring WebFlux 实战指南:用 Mono、Flux 和 WebClient 写响应式接口
java·spring
小bo波1 天前
使用Thread子类创建线程 VS 使用Runnable接口创建线程的区别
java·多线程·thread·并发编程·runnable
SamDeepThinking1 天前
高并发场景下,CompletableFuture与ForkJoinPool该如何取舍?
java·后端·面试