Java Design patterns

This commit is contained in:
Javadevjournal
2022-03-20 09:31:02 -07:00
parent aa5cb0a341
commit 3f49ebb6c0
52 changed files with 1080 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
package javadevjournal.design.creational.singleton;
public class SingletonMultiThreaded {
/* private instance variable */
private static volatile SingletonMultiThreaded INSTANCE;
/* private constructor */
private SingletonMultiThreaded() { }
public static SingletonMultiThreaded getInstance() {
/* double-checking lock */
if(null == INSTANCE){
/* synchronized block */
synchronized (SingletonMultiThreaded.class) {
if(null == INSTANCE){
INSTANCE = new SingletonMultiThreaded();
}
}
}
return INSTANCE;
}
}