package singleton;
/**
* 此类必须要实现:在当前应用程序中,永远只能有一个本类对象.这就是单例模式
*/
public class Boss {
// 让自己返回自己的一个对象,声明一个静态的Boss类型属性
private static Boss boss;//引用数据类型会自动初始化null 可写为 private static Boss boss = null;
// 构造方法私有化,目的是不让别人实例化自己
private Boss() {
}
// 通过此公共方法,让别人获取我的一个对象
public static Boss getBoss() {
if (boss == null) {
boss = new Boss();
}
return boss;
}
}
package singleton;
public class Test {
public static void main(String[] args) {
Boss boss1 = Boss.getBoss();// 引用,指向返回的对象
Boss boss2 = Boss.getBoss();
System.out.println(boss1 == boss2);//true 说明指向的是同一地址,引用的是同一个对象
}
}
创造单例模式的类的步骤:
1.你的类要有私有的构造器
2.声明一个私有的静态的类的实例化对象
3.声明一个公有的静态的方法返回该实例化对象
单例模式的好处:节省内存空间
如果一个类没有个性化的成员变量,有各种成员方法,则这个类就适合创建单例模式