/**
* 饿汉单例
* @description:直接创建实例,不管实例是否会被调用
* @缺点:当有大量的对象被提前实例化,会占用JVM内存空间
*/
public class SingletonPattern {
String name;
//实例化当前类的一个对象并 设置 访问权限为私有,即即只有当前类可以方法
private static final SingletonPattern singleton=new SingletonPattern("bahar;");
//在单例模式中将构造器私有化
private SingletonPattern() {
}
private SingletonPattern(String name) {
this.name = name;
}
//创建获取 (已经实例化的对象) 的方法
public static SingletonPattern getInstance(){
return singleton;
}
public String testSingle(){
return "测试单例模式是否可以整车创建对象";
}
@Override
public String toString() {
return "SingletonPattern{" +
"name='" + name + '\'' +
'}';
}
}
/**
* 功能描述 测试类
* @author 顾英明
* @date 2022/12/11 16:14
*/
public class Test {
public static void main(String[] args) {
SingletonPattern singletonPattern=SingletonPattern.getInstance();
System.out.println(singletonPattern.toString());
System.out.println(singletonPattern.testSingle());
}
}
运行结果如下:
SingletonPattern{name='bahar;'}
测试单例模式是否可以整车创建对象