Java面向对象_单例设计模式

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

1.构造方法私有化

2.声明一个本类对象

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

两种实现方式:饿汉式和懒汉式

何种情况下使用呢?当一个类中没有属性(对象的状态);该类作为工具类使用非常频繁;

好处:节省内存(因为不断创建对象会消耗内存)

 1 public class Practice14 {
 2     
 3     public static void main(String[] args) {
 4         // TODO Auto-generated method stub
 5         Single s=Single.getInstance();
 6         s.method();
 7 }    
 8 }
 9 //饿汉式
10 class Single{
11     private static Single single=new Single();
12     private Single(){ //构造方法私有化,为了防止在本类外部实例化对象
13         
14     }
15     public static Single getInstance(){
16         return single;
17     }
18     public void method(){
19         System.out.println("method");
20     }
21 }
22 //懒汉式
23 class Single2{
24     private static Single2 single=null;
25     private Single2(){ //构造方法私有化
26         
27     }
28     public static Single2 getInstance(){
29         if(single==null){
30             single=new Single2();
31         }
32         return single;
33     }
34     public void method(){
35         System.out.println("method");
36     }
37 }

 

posted on 2015-12-21 18:12  深海溺心  阅读(159)  评论(0编辑  收藏  举报

导航