使用枚举来创建单例是很方便的,类型固定,取值固定,我感觉比懒汉饿汉式好一些,
当然只是个人见解,代码也很简单,就和我们定义类一样,我写个小例子,你当参考。
- public static void main(String[] args) {
- // 对单例进行调用:
- SingleDemo single = SingleDemo.SINGLE;
- System.out.println(single.getName());
- }
- enum SingleDemo{
- // 定义单例实例,记得放在第一行且只定义一个元素
- SINGLE;
- // 定义成员属性,可定义若干
- private String name = "single of enum";
- // 定义成员方法,可定义若干
- public String getName(){
- return name;
- }
-
- }
- // 也可定义带参构造方法和抽象方法,不过这些需要在枚举元素定义的时候就实现,以下为参考代码:
- enum SingleDemo1{
- SINGLE("hello"){
- public String getName(){
- return name;
- }
- };
-
- public String name = "world";
-
- SingleDemo1(String name){
- this.name = name;
- }
-
- public abstract String getName();
-
- }
复制代码 |