JAVA_单例设计模式
Posted LastCoder
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA_单例设计模式相关的知识,希望对你有一定的参考价值。
单例设计模式是指:实现某个类在内存中只有唯一一个对象的设计模式。分为饿汉式和懒汉式模式:
想要一个工程在运行的时候,某个类在内存中只有一个唯一的对象,那么,要保证:
首先,其他类不能创建该对象--------------------------该对象所属类的构造方法为private修饰(就不能在其他类里面创建本类对象了)
其次,该对象要可以被其他类访问,那么只能在该对象所属类中创建一个该对象 --------------------------在该类中定义一个private static 修饰的本类对象
最后,必须在这个类里面提供访问方法,以便其他类可以访问--------------------------------------在该类中定义一个public static 修饰的,返回值类型为本类引用 的方法
1. 饿汉式设计模式:
class singleColumn{
private singleColumn(){}
private static singleColumn targetObject = new singleColumn();
public static singleColumn requestMethod (){
return targetObject;
}
}
class mainClass{
public static void main(String[] args){
singleColumn targetObject = singleColumn.requestMethod();
}
}
2. 懒汉式设计模式:
class singleColumn{
private singleColumn(){}
private static singleColumn targetObject = null;
public static singleColumn requestMethod (){
targetObject = new singleColumn();
return targetObject;
}
}
class mainClass{
public static void main(String[] args){
singleColumn targetObject = singleColumn.requestMethod();
}
}
饿汉式和懒汉式的区别在于:前者是在类初始化的时候就完成了静态对象的构建,后者是在调用访问方法的时候才完成的构建。
一般推荐使用饿汉式。因为懒汉式的可能会发生阻塞。
以上是关于JAVA_单例设计模式的主要内容,如果未能解决你的问题,请参考以下文章