2
0

More than 1 year has passed since last update.

java Singleton Patternとは

Last updated at Posted at 2023-03-05

singleton patternとは

プロジェクト内にたった1つだけ存在しなければならないインスタンスがある可能性があります。
例えば、学校といえば、学校には多くの生徒がいますが、学校自体は一つだけ存在しなければなりません。 会社も同じ。
会社には複数の部署が存在しますが、会社は1つの会社しか存在しません。 学校や会社が何度もnew()された時、複数のインスタンス変数を持つようになって問題が発生することを防止するために singletone patternを使用します。
singleton patternでは、あらかじめ生成されているインスタンスをpublic getMethod()を通じて取得して使用します。

singleton pattern方法

package singleton;

import java.util.Calendar;

public class Company {
    // 内部でInstanceを生成
    private static Company instance = new Company();

    // privateな constructor
    private Company() {}

    // 唯一なInstanceをget()
    public static Company getInstance() {
        if ( instance == null) {
            instance = new Company();
        }
        return instance;
    }
}

constructorはprivateにします。
private constructoの場合、外部からインスタンスを生成できないため、内部からnewしてインスタンスを生成します。
そして外部で唯一のオブジェクトを参照できるPublic static get Methodを生成!
100度呼んでも同じオブジェクトを返還します。(参照値が全部同じ!)

日付Instanceも何回もnew()されて作成する必要ないinstanceのため、エラーを起こします。
image.png

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0