为了避免外部环境对内部类进行修改,同时也为了控制实例数目,节省资源空间,我们可以利用单例模式来解决这一问题。
单例模式就是确保一个类只有一个实例,并提供一个全局访问点/全局方法来访问该实例。
应用实例:每个班一个班主任,一个公司一个老板。
//创建一个Person类
class Person{
//创建一个Person类的私有静态的实例对象,因为静态可以类名调用其属性。
private static Instance = new Person();
//构造函数私有化,避免外部修改
private construct(){}
}
//直接使用Person类的属性
Person.Instance;
//懒汉式
class Person{
//创建一个Person类的私有静态的实例对象,因为静态可以类名调用其属性。
private static instance = new Person();
//构造函数私有化,避免外部修改
private construct(){}
//静态一个Instance方法
static Instance(){
//判断当前单例是否存在,不存在就创建一个单例;
if(Person.instance == NULL){
Person.instance = new Person();
}
else{
return Person.instance;
}
}
}
//直接使用Person类的方法
Person.Instance();