博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AJPFX:如何保证对象唯一性呢?
阅读量:6967 次
发布时间:2019-06-27

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

思想:
1,不让其他程序创建该类对象。
2,在本类中创建一个本类对象。
3,对外提供方法,让其他程序获取这个对象。
步骤:
1,因为创建对象都需要构造函数初始化,只要将本类中的构造函数私有化,其他程序就无法再创建该类对象;
2,就在类中创建一个本类的对象;
3,定义一个方法,返回该对象,让其他程序可以通过方法就得到本类对象。(作用:可控)
代码体现:
1,私有化构造函数;
2,创建私有并静态的本类对象;
3,定义公有并静态的方法,返回该对象。

//饿汉式
class Single{
private Single(){} //私有化构造函数。
private static Single s = new Single(); //创建私有并静态的本类对象。
public static Single getInstance(){ //定义公有并静态的方法,返回该对象。
return s;
}
}

//懒汉式:延迟加载方式。

Class Single2{
private Single2(){}
private static Single2 s = null;
public static Single2 getInstance(){
if(s==null)
s = new Single2();
return s;
}
}**

转载于:https://blog.51cto.com/14314113/2393578

你可能感兴趣的文章
探访广铁深圳“父女搭档”乘警出勤风采
查看>>
6月Python热文Top10,精选自1000篇文章
查看>>
Vue 折腾记 - (12) Nuxt.js写一个校验访问浏览器设备类型及环境的中间件
查看>>
使用 React 全家桶搭建一个后台管理系统
查看>>
腾讯云容器团队内部Istio专题分享
查看>>
当我说要做大数据工程师时他们都笑我,直到三个月后……
查看>>
【数据科学系统学习】Python # 数据分析基本操作[二] pandas
查看>>
第一批95后已经是阿里科学家了
查看>>
第七章: ansible故障排查
查看>>
everything is object
查看>>
Android中的设计模式之单例模式
查看>>
webpack核心概念
查看>>
Vue 兼容 ie9 的全面解决方案
查看>>
移动端总结
查看>>
认识Arduino,开始嵌入式之旅
查看>>
深入了解Threadlocal
查看>>
HTTP的请求与响应
查看>>
rsync部署使用
查看>>
算法-java排序实现总结
查看>>
VS Code、ATOM这些开源文本编辑器的代码实现中有哪些奇技淫巧?
查看>>