[Ava]モノトーンパターン
5625 ワード
スプリングは基本的に中空をモノトーンオブジェクトにします.
ソース:https://www.javatpoint.com/singleton-design-pattern-in-java
インスタンスが1つしかないクラスを定義します.
地域全体が近づくようにします.
すなわち、単色クラスが1つのインスタンスしかなく、他のクラスからアクセスできることを保証する必要があります.
モノトーンモードには2つの方法があります.初期インストール:ロード時にインスタンス を作成する Lazy Instantation:必要に応じてインスタンス を作成
インスタンスは毎回作成されないため、メモリを節約できます.
同じインスタンスが再利用され続けます.
シングルトーンモードは、マルチスレッドおよびデータベースを使用するアプリケーションでほとんど使用されます.記録、キャッシュ、書き込みプール、設定などに使用します.
単色クラスを作成するには、次の内容が必要です.体力メンバー:静的なのでメモリに1回しか格納されません.1トンクラスのインスタンスを格納します. privateジェネレータ:他のクラスが単色クラスのインスタンスを生成することを禁止します. static factoryメソッド:単一のトーンオブジェクトへのグローバルアクセスを許可し、インスタンスを呼び出し元に返します.
STATICメンバーを宣言しながらインスタンスを作成します.
したがって、クラスがロードされるとインスタンスが生成されます.
synchronizedメソッドまたはsynchronizedブロックを使用してインスタンスを作成します.必要に応じてインスタンスを作成します.
ソース:https://www.javatpoint.com/singleton-design-pattern-in-java
モノトーンモードとは
インスタンスが1つしかないクラスを定義します.
地域全体が近づくようにします.
すなわち、単色クラスが1つのインスタンスしかなく、他のクラスからアクセスできることを保証する必要があります.
モノトーンモードには2つの方法があります.
モノトーンモードの利点
インスタンスは毎回作成されないため、メモリを節約できます.
同じインスタンスが再利用され続けます.
いつ書きますか。
シングルトーンモードは、マルチスレッドおよびデータベースを使用するアプリケーションでほとんど使用されます.記録、キャッシュ、書き込みプール、設定などに使用します.
モノトーンレベルを作成してみます。
単色クラスを作成するには、次の内容が必要です.
初期のInstantationについて
STATICメンバーを宣言しながらインスタンスを作成します.
したがって、クラスがロードされるとインスタンスが生成されます.
class A{
private static A obj=new A();//자기 자신의 인스턴스를 생성한다. 클래스가 로딩될때 생성된다.
//기본생성자를 private 으로 선언함으로써 다른 클래스가 이 클래스의 인스턴스를 생성하지 못하게 한다.
private A(){}
//static 팩토리 메서드를 통해 인스턴스를 반환한다.
public static A getA(){
return obj;
}
public void doSomething(){
//write your code
}
}
Lazy Instantiationについて
synchronizedメソッドまたはsynchronizedブロックを使用してインスタンスを作成します.必要に応じてインスタンスを作成します.
class A{
private static A obj;
private A(){}
public static A getA(){
if (obj == null){
synchronized(Singleton.class){
if (obj == null){
obj = new Singleton();//필요할때 인스턴스가 생성된다.
}
}
}
return obj;
}
public void doSomething(){
//write your code
}
}
Reference
この問題について([Ava]モノトーンパターン), 我々は、より多くの情報をここで見つけました https://velog.io/@cksdnr066/Java-싱글톤-패턴テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol