单例设计模式:最常用,最简单的设计模式
目的:保证在整个应用中某一个类有且仅有一个实例(一个类在堆内存中只存在一个对象),即所有指向该类型实例的引用都指向同一块内存空间。
写单例模式的步骤:
1,必须在该类中自己先创建出一个对象。
2,私有化自身的构造器,防止外界通过构造器创建新的对象。
3,向外暴露一个公共的静态方法用于获取自身的对象
定义一个数组的工具类(ArrayUtil),使用单例模式解决。
//使用单例设计模式
class ArrayUtil
{
//1,必须在该类中自己先创建出一个对象。
private static ArrayUtil arr = new ArrayUtil();
//2,私有化自身的构造器,防止外界通过构造器创建新的对象。
private ArrayUtil(){}
//3,向外暴露一个公共的静态方法用于获取自身的对象
public static ArrayUtil getInstance()
{
return arr;
}
public void sort(int[] arr)
{
System.out.println("数组排序");
}
}
public class SingletonDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(ArrayUtil.getInstance() == ArrayUtil.getInstance());
ArrayUtil.getInstance().sort(null);
ArrayUtil.getInstance().sort(null);
ArrayUtil.getInstance().sort(null);
}
}
true
数组排序
数组排序
数组排序