diff --git a/src/main/java/top/fjy8018/designpattern/pattern/creational/singleton/HungrySingleton.java b/src/main/java/top/fjy8018/designpattern/pattern/creational/singleton/HungrySingleton.java new file mode 100644 index 0000000..4c3f5f0 --- /dev/null +++ b/src/main/java/top/fjy8018/designpattern/pattern/creational/singleton/HungrySingleton.java @@ -0,0 +1,28 @@ +package top.fjy8018.designpattern.pattern.creational.singleton; + +/** + * 单例模式:饿汉式(类加载时初始化) + * 优点:写法简单,类加载时初始化,线程安全 + * 缺点:若类不被使用则会造成内存浪费 + * + * @author F嘉阳 + * @date 2018-09-24 15:38 + */ +public class HungrySingleton { + /** + * 类加载时初始化 + * 声明final(可选),只有在类加载时初始化才能声明为final,故懒汉式不能声明为final + */ + private static final HungrySingleton HUNGRYSINGLETON; + + static { + HUNGRYSINGLETON = new HungrySingleton(); + } + + private HungrySingleton() { + } + + public static HungrySingleton getInstance() { + return HUNGRYSINGLETON; + } +}