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

    设计模式可以使用我们在软件开发过程中更加灵活,软件的扩展更容易,软件的耦合度更低,设计模式不是在开发中刻意去用的,而是到了什么时候用什么模式的,不能强迫的使用它,应该是自然而然的想到它。

    单例模式

    在23种设计模式中,单例最为简单和纯粹,也是最容易理解的,即它在软件生命周期里,只有一个实例,就是说你初始化了一个对象之后,它就会一直存在,直到程序结束,在java语言里使用单例的方法有很多,像饿汉单例懒汉单例,在实现过程中前者是在程序启动时就会初始化,而后者是在第一次使用它时进行初始化。

    代码实现

    饿汉模式

    /**
     * 饿汉单例.
     */
    public class SingletonObj {
      private static SingletonObj instance = new SingletonObj();
    
      private SingletonObj() {
      }
    
      public static SingletonObj getInstance() {
        return instance;
      }
    }
    

    懒汉模式

    /**
     * 饿汉模式.
     */
    public class SingletonLazy {
      private SingletonLazy() {
      }
    
      public static final SingletonLazy getInstance() {
        return SingletonHolder.INSTANCE;
      }
    
      private static class SingletonHolder {
        private static final SingletonLazy INSTANCE = new SingletonLazy();
      }
    }
    
    
  • 相关阅读:
    973. K Closest Points to Origin
    919. Complete Binary Tree Inserter
    993. Cousins in Binary Tree
    20. Valid Parentheses
    141. Linked List Cycle
    912. Sort an Array
    各种排序方法总结
    509. Fibonacci Number
    374. Guess Number Higher or Lower
    238. Product of Array Except Self java solutions
  • 原文地址:https://www.cnblogs.com/lori/p/11773960.html
Copyright © 2011-2022 走看看