设计模式 之单例模式

[b]一:定义[/b]
单例模式意思就是只有一个实例,单例模式确保某一个类只有一个实例而且自行实例化并向整个系统提供这个实例,这个类称为单例类。
[b]二:生活中的例子说明[/b]
一个window系统里对应只有一个回收站
[b]三:模式的好处[/b]
单例模式的好处在于可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收(garbage collection)。
[b]四:单例分懒汉式单例跟饿汉式单例,下面给一个例子说明吧[/b]
package com.lxit.sington;
public class Main
{
//懒汉式的单例模式
private static Main main ;

public static synchronized Main getInstance(){
if(main == null){
main = new Main();
}
return main ;
}
//饿汉式单例类
private Main(){}

private static Main mainObject = new Main();

public static Main getMainObject() {
return mainObject;
}

}

单例模式适合于一个类只有一个实例的情况,比如窗口管理器,打印缓冲池和文件系统,它们都是原型的例子。典型的情况是,那些对象的类型被遍及一个软件系统的不同对象访问,因此需要一个全局的访问指针,这便是众所周知的单例模式的应用。当然这只有在你确信你不再需要任何多于一个的实例的情况下。 单例模式的用意在于前一段中所关心的。通过单例模式你可以知道:

确保一个类只有一个实例被建立
提供了一个对对象的全局访问指针
在不影响单例类的客户端的情况下允许将来有多个实例

你可能感兴趣的:(设计模式,生活,设计模式)