• java里的 懒汉和恶汉模式-----讲解


    ------------java中的恶汉模式

      

    public void Test{
    
       private static Test inte = new Test(); // 内部自己创建好实例,私有属性(不建议在外部直接调用我们的成员变量)
      //私有的构造方法
       private Test{
    //定义私有的构造方法,禁止外部直接创建实例
    } public static Test getTest() { return inte; } }///创建一个方法,使外部可以得到此实例 

      

     恶汉模式的优劣:

    》》》1,恶汉式 加载类的时候比较慢,运行比较快

    》》》2

     1,定义私有的构造方法,禁止外部直接创建实例

     2,内部自己创建好实例,私有属性(不建议在外部直接调用我们的成员变量)

     3,创建一个方法,使外部可以得到此实例

     ---------------------java中的懒汉模式

    /** * 懒汉式 加载类的时候比较快,运行时比较慢 *

     * 1,创建私有构造方法,禁止外部直接创建实例 *

    *  2,创建私有变量实例化对象,私有属性(不建议在外部直接调用我们的成员变量)

       3,创建方法,使外部可以调用我们的私有对象实例 

     

    public  class Test{
    
    
       private Test{}   //定义私有的构造 ,禁止外部直接创建示例
    
       private static Test test = null;  //创建私有实例
    
      
      public Test getTest(){  //创建方法,使外部可以调用我们的私有对象实例
    
        
       returen test;
     
      }
    
    
    }
    

        **  这样也是可以的,不过,如果涉及到多线程,最好加上一个同步锁(synchronized)可以

         * * 直接在方法上添加 但是每次都要去进行同步,显然不是最好的。

         * * 最好的当然是下面的,在方法中进行加上

          synchronized * @return */

           public static Singleton getInstance() {

           if (instance == null){

             synchronized (Singleton.class){

          if (instance == null)  {

         instance = new Singleton();

         } } } return instance; }

     

     

  • 相关阅读:
    KnowYoueSelf
    计算机组成原理--海明码的编码和校验方法(易懂)
    html5新特性
    web前端性能优化
    web标准
    《王者归来》笔记-安全&性能01
    vue核心最基本功能
    BOM&DOM
    JavaScript-语法
    前端04
  • 原文地址:https://www.cnblogs.com/zhangyu0217----/p/6529156.html
Copyright © 2020-2023  润新知