zoukankan      html  css  js  c++  java
  • lintcode:Singleton 单例

    题目:

    单例

    单例是最为最常见的设计模式之一。对于任何时刻,如果某个类只存在且最多存在一个具体的实例,那么我们称这种设计模式为单例。例如,对于 class Mouse (不是动物的mouse哦),我们应将其设计为 singleton 模式。

    你的任务是设计一个 getInstance 方法,对于给定的类,每次调用 getInstance 时,都可得到同一个实例。

     样例

    在 Java 中:A a = A.getInstance(); A b = A.getInstance(); a 应等于 b.

    挑战

    如果并发的调用 getInstance,你的程序也可以正确的执行么?

    解题:

    知道是面向对象什么的,不知道怎么搞,程序来源,这里给了还有判断线程冲突问题的。。。

    Java程序

    class Solution {
        /**
         * @return: The same instance of this class every time
         */
         private Solution(){
             
         }
        private static  volatile Solution instance = new Solution();
        public static Solution getInstance() {
            // write your code here
            return instance ;
        }
    };
    View Code

    总耗时: 102 ms

    看着好简单的。。。。

    Python的我就不知道怎么写了。。。

  • 相关阅读:
    oracle 的exists 的用法
    linux
    C++纯虚函数
    C++ 的虚析构函数
    C++ new
    C++点和箭头操作符用法区别
    static
    关于C的int
    互斥量mutex的简单使用
    nginx服务器屏蔽上游错误码
  • 原文地址:https://www.cnblogs.com/theskulls/p/4869572.html
Copyright © 2011-2022 走看看