diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 849c269b2902b3e6dc94522ebfed10e3fe176a2c..ec344f90ad918c0cdaf8a26d8aadbba79000a57a 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -3,7 +3,6 @@
-
@@ -93,6 +92,7 @@
+
@@ -107,11 +107,11 @@
+
-
@@ -153,6 +153,7 @@
+
1634096220780
diff --git a/out/production/patterns/com/pattern/SingletonPattern/SingleMain.class b/out/production/patterns/com/pattern/SingletonPattern/SingleMain.class
index 6abc01b7eb7065c1e5d58738f3248d3583162186..ccc055eab04ea01454ccea3c4ea0921e7f05fa32 100644
Binary files a/out/production/patterns/com/pattern/SingletonPattern/SingleMain.class and b/out/production/patterns/com/pattern/SingletonPattern/SingleMain.class differ
diff --git a/out/production/patterns/com/pattern/SingletonPattern/examples/README.md b/out/production/patterns/com/pattern/SingletonPattern/examples/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/out/production/patterns/com/pattern/SingletonPattern/materials/HungrySingleObject.class b/out/production/patterns/com/pattern/SingletonPattern/materials/HungrySingleObject.class
new file mode 100644
index 0000000000000000000000000000000000000000..68f00aa9ebdf797de58eef01031cb3027fb94485
Binary files /dev/null and b/out/production/patterns/com/pattern/SingletonPattern/materials/HungrySingleObject.class differ
diff --git a/out/production/patterns/com/pattern/SingletonPattern/materials/LazySingleObject.class b/out/production/patterns/com/pattern/SingletonPattern/materials/LazySingleObject.class
new file mode 100644
index 0000000000000000000000000000000000000000..ca9dd2cd8594e6e4dfa7974e55d078d9d8cbb3cd
Binary files /dev/null and b/out/production/patterns/com/pattern/SingletonPattern/materials/LazySingleObject.class differ
diff --git a/out/production/patterns/com/pattern/SingletonPattern/materials/README.md b/out/production/patterns/com/pattern/SingletonPattern/materials/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/out/production/patterns/com/pattern/SingletonPattern/materials/SingleObject.class b/out/production/patterns/com/pattern/SingletonPattern/materials/SingleObject.class
deleted file mode 100644
index f97b91a3477f2b183cbe8d264896ca26dd9b2d2c..0000000000000000000000000000000000000000
Binary files a/out/production/patterns/com/pattern/SingletonPattern/materials/SingleObject.class and /dev/null differ
diff --git a/src/com/pattern/SingletonPattern/SingleMain.java b/src/com/pattern/SingletonPattern/SingleMain.java
index 3745e415b39b06ffbf155dfe612c304d3b379978..19a027abe3cfc974e3d08d244a5f29fc23505b21 100644
--- a/src/com/pattern/SingletonPattern/SingleMain.java
+++ b/src/com/pattern/SingletonPattern/SingleMain.java
@@ -1,8 +1,11 @@
package com.pattern.SingletonPattern;
import com.pattern.SingletonPattern.materials.HungrySingleObject;
+import com.pattern.SingletonPattern.materials.LazySingleObject;
/**
+ * 单例模式
+ *
* @author lx
* @date 2021/10/13 16:55
**/
@@ -10,6 +13,11 @@ public class SingleMain {
public void main() {
- System.err.println(HungrySingleObject.getInstance().getName());
+ System.err.println("饿了:" + HungrySingleObject.getInstance().getName());
+
+ System.err.println("累了:" + LazySingleObject.getInstance().getName());
+
+ System.err.println("喝某某特饮!");
}
+
}
diff --git a/src/com/pattern/SingletonPattern/materials/HungrySingleObject.java b/src/com/pattern/SingletonPattern/materials/HungrySingleObject.java
index 7dba20feb0645b9cebe63114c15864b05c102af0..4f4dd43ccca212c3d15a97926bea04071b82e598 100644
--- a/src/com/pattern/SingletonPattern/materials/HungrySingleObject.java
+++ b/src/com/pattern/SingletonPattern/materials/HungrySingleObject.java
@@ -18,6 +18,6 @@ public class HungrySingleObject {
}
public String getName() {
- return "SingleObject";
+ return "HungrySingleObject";
}
}
diff --git a/src/com/pattern/SingletonPattern/materials/LazySingleObject.java b/src/com/pattern/SingletonPattern/materials/LazySingleObject.java
new file mode 100644
index 0000000000000000000000000000000000000000..2e438bd579d2e0fe265969bc9795bb1b7b336b08
--- /dev/null
+++ b/src/com/pattern/SingletonPattern/materials/LazySingleObject.java
@@ -0,0 +1,26 @@
+package com.pattern.SingletonPattern.materials;
+
+/**
+ * 懒汉式 : 什么时候要了,我先去找找,没有就去制作
+ *
+ * @author lx
+ * @date 2021/10/13 16:50
+ **/
+public class LazySingleObject {
+
+ private static LazySingleObject SINGLE_OBJECT;
+
+ private LazySingleObject() {
+ }
+
+ public static LazySingleObject getInstance() {
+ if (SINGLE_OBJECT == null) {
+ return SINGLE_OBJECT = new LazySingleObject();
+ }
+ return SINGLE_OBJECT;
+ }
+
+ public String getName() {
+ return "LazySingleObject";
+ }
+}