簡體   English   中英

設計單例模式-構造函數

[英]Design Singleton Pattern - Constructor

我無法使用單例設計模式創建對象,這是我所做的:

class Test {
    public static Test objTest = null;
    public static int count = 0;

    public static Test CreateObject() {
        if (objTest != null)
            objTest = new Test(); 
        return objTest;
    }

    private Test() {
        Test.count++;
    }
}

我是否創建了zeroton模式?

一次檢查一下createObject方法內的條件。 應該是if(objTest == null)

除了事實,您的計數將始終為“ 0”或“ 1”(忽略潛在的多線程問題)-為什么要使用該參數?

您正在檢查objTest != null而不是objTest == null

這就是為什么您總是返回null且從不創建新實例的原因。

objTest變量也應該是私有的,您不想引用空實例。 只有通過CreateObject()方法才能訪問實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM