单例指的是一个类永远只能创建一个实例对象。
实现饿汉单例
1.构造器私有化
2.提供对象
类中创建 public static 类名 对象名 =new 类名();
public class SingleInstance1 {
/**
static修饰的成员变量,静态成员变量,加载一次,只有一份
*/
// public static int onLineNumber = 21;
public static SingleInstance1 instance = new SingleInstance1();
/**
1、必须私有构造器:私有构造器对外不能被访问。
*/
private SingleInstance1(){
}
}
关于懒汉单例
真正需要对象时时候才去创建一个对象(延迟加载对象)
实现懒汉单例
1.构造器私有
2.类中创建 private static 类名 instance; //只是一个遥控器
3.定义方法对外返回单例对象
public static 类名 getinstance(){
if(instance==null) {
instance=new 类名();}
return instance;
};
/**
目标:设计懒汉单例
*/
public class SingleInstance2 {
/**
2、定义一个静态的成员变量