zoukankan      html  css  js  c++  java
  • 单例模式 设计模式

    单例模式是设计模式里考的最多的,单例模式在内存中只有一个实例,减少了系统内存的开支,由于单例模式在系统中只有一个实例,对那些在建立实例是开销较大的,可以通过产生一个实例,让它永久驻留内存,这样可以减少系统开销。单例模式可以避免对资源的多重占用,如对一个文件的多重写操作。可以通过单例模式在系统设置全局的访问点,优化和共享资源访问。

    普通的饿汉式单例模式:

     1 public class Singleton {
     2     
     3     private static final Singleton instance= new Singleton();
     4     
     5     private Singleton(){        
     6     }
     7     
     8     public static Singleton getInstance(){
     9         return instance;
    10     }
    11 }

    为了避免每次新建对象的单例模式:

     1 public class Singleton1 {
     2 
     3     private static final Singleton1 instance= null;
     4     private Singleton1(){}
     5     public static Singleton1 getInstance(){
     6         if(instance==null){
     7             return new Singleton1();
     8         }else {
     9             return instance;
    10         }
    11     }
    12 }

    线程安全的懒汉式单例模式:

     1 public class Singleton2 {
     2     private static final Singleton2 instance=null;
     3     private Singleton2(){}
     4     public static synchronized Singleton2 getInstance(){
     5         if(instance==null){
     6             return new Singleton2();
     7         }else{
     8             return instance;
     9         }
    10     }
    11 }
  • 相关阅读:
    Java基本数据类型之间转换
    python 元组tuple
    python 列表List
    python 字符串
    python for循环
    python break/continue
    python while循环
    python条件判断if/else
    python运算符
    python变量
  • 原文地址:https://www.cnblogs.com/weilq/p/3623734.html
Copyright © 2011-2022 走看看