首页 > 编程语言 > 详细

java—单例设计模式

时间:2015-07-26 19:02:55      阅读:298      评论:0      收藏:0      [点我收藏+]

单例设计模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。

1、构造方法私有化

2、声明一个本类对象

3、给外部提供一个静态方法获取对象实例

什么时候使用?

1、通过在工具类的设计中使用;

2、当一个类中没有属性;

3、该类作为工具类使用非常频繁。

两种方式:

一、饿汉式

 1 package practice1;
 2 //单例模式
 3 public class Test7 {
 4     public static void main(String[] args) {
 5         Singleton s=Singleton.getInstance();
 6         s.method();
 7     }
 8 }
 9 class Singleton{
10     private static Singleton singleton=new Singleton();//定义时就创建对象
11     private Singleton(){//构造方法私有化    
12     }
13     public static Singleton getInstance(){//给外部提供一个全局访问点,静态方法
14         return singleton;
15     }
16     public void method(){//测试方法
17         System.out.println("method");
18     }
19 }

饿汉式在类创建的同时就已经创建好一个静态的对象供系统使用,以后不再改变,所以是线程安全的。

 

二、懒汉式

class Singleton2{
    private static Singleton2 singleton2=null;//定义时不直接创建
    private Singleton2(){}//构造方法私有化
    public static Singleton2 getInstance(){
        if(singleton2==null){
            singleton2=new Singleton2();
        }
        return singleton2;
    }
    public void method(){//测试方法
        System.out.println("method");
    }
}

 

java—单例设计模式

原文:http://www.cnblogs.com/chenxing818/p/4678332.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!