博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为什么java类中可以创建实例_java – 为什么我出乎意料地能够创建我的单例类的多个实例?...
阅读量:5899 次
发布时间:2019-06-19

本文共 810 字,大约阅读时间需要 2 分钟。

根据我的知识,Singleton Design Pattern意味着我们只能创建一个类的单个对象.

以下代码成功运行,没有任何错误/异常.

我希望代码失败,因为SingletonExample类有一个私有的默认构造函数.

public class SingletonExample {

private static SingletonExample singletonInstance;

private SingletonExample() {

}

public static SingletonExample getSingletonInstance() {

if (null == singletonInstance) {

System.out.println("Creating new instance");

singletonInstance = new SingletonExample();

}

return singletonInstance;

}

public void printSingleton(){

System.out.println("Inside print Singleton");

}

public static void main(String a[]) {

SingletonExample singObj1 = new SingletonExample();

SingletonExample singObj2 = new SingletonExample();

}

}

我的代码有问题吗?

解决方法:

因为您的main方法在类SingletonExample中,所以主代码可以访问私有构造函数.

尝试将main方法移动到另一个类.

标签:java,design-patterns

来源: https://codeday.me/bug/20190711/1436503.html

转载地址:http://vgqsx.baihongyu.com/

你可能感兴趣的文章
Android开发指南(30) —— Multimedia and Camera
查看>>
kvm-1
查看>>
Jmeter的接口测试简介
查看>>
第二阶段冲刺03
查看>>
hdu1045 Fire Net---二进制枚举子集
查看>>
drupal网站邮件发送功能的实现
查看>>
leetcode 64. Minimum Path Sum
查看>>
查看表空间数据文件
查看>>
Linux输入输出管理
查看>>
zabbix监控系统的配置
查看>>
SQL Server Management Studio(SSMS)修复来解决SSMS找不到的问题
查看>>
oracle中时间处理
查看>>
配置Java EE Eclipse+Tomcat开发环境
查看>>
SSH免密码登录的方法
查看>>
textkit
查看>>
Spring MVC中前后台数据传输小结
查看>>
Android详细的对话框AlertDialog.Builder使用方法
查看>>
2594 解药还是毒药
查看>>
Spring中使用@Profile指定不同的环境
查看>>
《精进:如何成为一个很厉害的人》读书笔记(转载)
查看>>