什么是单例模式
单例模是一种对象创建型模式,使用单例模式可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。其实,GoF对单例模式的定义是:保证一个类、只有一个实例存在,同时提供能对该实例加以访问的全局访问方法.
二、为什么要使用单例模式呢?
:在应用系统开发中,我们常常有以下需求:
-在多个线程之间,比如servlet环境,共享同一个资源或義 :者操作同一个对象 。-在整个程序空间使用全局变量,共享资源 。大规模系统中,为了性能的考虑,需要节省对象的创建| 时间等。因为Singleton模式可以保证为一个类只生成唯一的实例_ 丨对象,所以这些情况,Singleton模式就派上用场了, |
ptabllc class Person {
ptiblic static final Person person _ new Person";
private Scrmg public String gecHaiteO <
return name;
public void secHame(String name) {
thls.naite ■ name;
//
构萑函教私有化
private Person() {
//
捂供一个全15的》态方法
poblic static Person gecPerson() {
return
person;
饿汉模式:一开始就实例化,耗费资源,多线程可以保证单例模式
懒汉模式:多线程不能保证单例模式,只能在单线程保证单例模式
双层判断,多线程可以保证单例模式