Java--单例模式
原创约 478 字大约 2 分钟...
14-Java--单例模式.md
注意
本博文仅供学术研究和交流参考,严禁将其用于商业用途。如因违规使用产生的任何法律问题,使用者需自行负责。
单例模式(singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点
单例模式要点:
- 某个类只能有一个实例
- 它必须自行创建这个示例
- 必须自行向整个系统提供这个实例
单例模式实现:
- 拥有一个私有构造器
- 提供一个自身静态私有的成员变量
- 提供一个公有的静态公有的方法
public class Singleton {
//在自己内部定义自己的一个实例,只供内部调用
private static Singleton instance = new Singleton();
private Singleton(){
//do something
}
//这里提供了一个供外部访问本class的静态方法,可以直接访问
public static Singleton getInstance(){
return instance;
}
}
单例模式实现步骤:
1.构造器私有
2.提供私有的静态的当前类类型的变量
3.提供一个公共的静态方法,返回刚才定义的变量,如果这个变量为null,那么给他赋值
public class MyOrder {
// public MyOrder() {
// // TODO Auto-generated constructor stub
// }//为什么有这个空的构造器存在。。输出值就为0咯。。。没有则为1
private static MyOrder myOrder;//第一个MyOrder是引用类型 第二个myOrder是变量名
public static MyOrder getInstance()
{
if(myOrder == null) {
myOrder = new MyOrder();
}
return myOrder;
}
static int count = 0;
private MyOrder()
{
count++;
}
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
MyOrder myOrder = MyOrder.getInstance();
}
System.out.println(MyOrder.count);//1
}
}
分割线
相关信息
以上就是我关于 Java-单例模式 知识点的整理与总结的全部内容,另附源码
Powered by Waline v2.15.4