单例设计模式及一个类只能产生一个对象。
1.饿汉式单例
如下例:
class hungryMan{
private final static hungryMan man = new hungryMan();
private hungryMan(){ }
final static hungryMan getInstance(){
return man;
}
public void print(){
System.out.println("hello hungryMan");
}
}
public class text_0406 {
public static void main(String[] args) {
hungryMan hungry = hungryMan.getInstance();
hungry.print();
}
}
2.懒汉单例模式
package java_project;
class lazyMan{
private static lazyMan LAZY_MAN;
private lazyMan(){}
static lazyMan getInstance(){
if(LAZY_MAN == null){
LAZY_MAN = new lazyMan();
}
return LAZY_MAN;
}
public void print(){
System.out.println("hello lazyMan");
}
}
public class test_lazyMan {
public static void main(String[] args) {
lazyMan LAZY_MAN = null;
LAZY_MAN = lazyMan.getInstance();
LAZY_MAN.print();
}
}
懒汉式存在线程安全问题,一般写饿汉式。