单态设计模式的特点
1、单态类确保自己有却只有一个实例。
2、单态类必须自己创建自己的实例。
3、单态类必须为其他对象提供唯一的实例。
单例模式的优点:
在内存中只有一个对象,节省内存空间。
避免频繁的创建销毁对象,可以提高性能。
避免对共享资源的多重占用。
可以全局访问。
代码:
1、单态类确保自己有却只有一个实例。
2、单态类必须自己创建自己的实例。
3、单态类必须为其他对象提供唯一的实例。
单例模式的优点:
在内存中只有一个对象,节省内存空间。
避免频繁的创建销毁对象,可以提高性能。
避免对共享资源的多重占用。
可以全局访问。
代码:
package Singleton;
//单例实现方法一
class FileDao{
private static FileDao fileDao = new FileDao();
public static FileDao getFileDao(){
return fileDao;
}
private FileDao(){
System.out.println("FileDao构造函数");
}
public void sayHello(){
System.out.println("sayHello");
}
}
//单例实现方法二
class Hello{
private static Hello hello = null;
public static synchronized Hello getHello(){
if(hello==null){
hello = new Hello();
}
return hello;
}
private Hello(){
System.out.println("Hello构造函数");
}
public void sayHello(){
System.out.println("Hello.sayHello");
}
}
public class Singleton {
public static void main(String[] args) {
// TODO Auto-generated method stub
FileDao fileDao = FileDao.getFileDao();
fileDao.sayHello();
FileDao fileDao1 = FileDao.getFileDao();
fileDao1.sayHello();
Hello hello = Hello.getHello();
hello.sayHello();
Hello hello1 = Hello.getHello();
hello1.sayHello();
}
}