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

    模式定义:

    单件模式主要作用是保证在java应用程序中,一个类只有一个实例存在。在很多操作中,比如建立目录、数据库连接都需要这样的单线程操作。

    单件实例可以状态化,用于保存状态。多个状态化的单件实例可以座位状态仓库对外提供服务。

    另外,单件实例也可以无状态化,用于充当工具类。

    单件一般有两种形式:

    第一种

    public class Singleton {

         //私有构造方法

         private Singleton() {}

        //私有静态变量

         private static Singleton mInstance = new Singleton();

        //静态方法

         public static Singleton getInSingleton() {

             return mInstance;

         }

    }

    第二种

    public class Singleton {

         //私有构造方法

         private Singleton() {}

        //私有静态变量,null

         private static Singleton mInstance = null;

        //静态方法

         public static synchronized Singleton getInSingleton() {

             //只有第一次使用时生成实例,提高了效率

             if (mInstance == null) {

                 mInstance = new Singleton();

             }         return mInstance;

         }

    }

    第二种的synchronized很关键,不加同步锁的话可能会产生多个实例。

     
  • 相关阅读:
    优化SQL查询:如何写出高性能SQL语句
    提高SQL执行效率的16种方法
    Spring Ioc DI 原理
    java内存泄漏
    转:js闭包
    LeetCode Best Time to Buy and Sell Stock III
    LeetCode Best Time to Buy and Sell Stock with Cooldown
    LeetCode Length of Longest Fibonacci Subsequence
    LeetCode Divisor Game
    LeetCode Sum of Even Numbers After Queries
  • 原文地址:https://www.cnblogs.com/jyx140521/p/2822508.html
Copyright © 2011-2022 走看看