package 单例模式;
/*
* 单例模式:为了确保JVM中某一个类的对象只有一个。
* 要领:1构造方法私有化
* 2 对外提供一个获取当前类型对象的方法
* 3 类里面要提供一个当前类型的静态变量
*
* 单例模式有两种:
* 饿汉式
* 懒汉式
* **/
public class TestDF {
public static void main(String[] args) {//懒汉式
user u1=user.getuser();
user u2=user.getuser();
System.out.println(u1==u2);
}
}
class user{
private static user s=null;//类里面提供一个当前类型的静态变量;
private user(){//构造方法私有化
}
public static user getuser(){//对外提供一个获取当前类对象的方法。
if(s==null){
s=new user();
}
return s;
}
}
==========================
懒汉式
package 单例模式;
public class Test02 {//饿汉式
public static void main(String[] args){
user1 u1=user1.getuser1();
user1 u2=user1.getuser1();
System.out.println(u1==u2);
}
}
class user1{
public static user1 u=new user1();//类里面要提供一个当前类型的静态变量
private user1(){}//构造方法私有化;
public static user1 getuser1(){//对外提供一个获取当前类型对象的方法
return u;
}
}