0

編集:シングルトン クラスと静的メンバーのみを持つクラスの違いが必要です。java は静的内部クラスではなく静的クラスを許可していないため、シングルトン クラスと静的内部クラスを比較したくありません。

Singleton クラスでは、ユーザーはそのクラスのオブジェクトを 1 つだけ持つことができます。これにより、ユーザーが属性のインスタンスを 1 つだけ持つように制限できます。

これは、静的メンバーと静的メソッドのみを持つクラスを使用することで実現できます (静的内部クラスではありません) 。

それで、次の2つのクラスの違いは何ですか

シングルトン クラス:

public class Test {
    public static void main(String args[]) {
        Singleton s = Singleton.getInstance();
        s.foo();
    }
}

class Singleton {

    private static Singleton obj = new Singleton();

    private Singleton() {
    }

    public static Singleton getInstance() {
        return obj;
    }

    public void foo() {
        // something...
    }
}

静的メソッドとメンバーのみを持つクラス:

public class Test {
    public static void main(String args[]) {
        NotSingleton.foo();
    }
}

class NotSingleton {
    public static void foo() {
        // something...
    }
}
4

0 に答える 0