java枚举类单例示例

Wesley13
• 阅读 680

public class Singleton {
    //私有化构造函数
    private Singleton(){ }
 
    //定义一个静态枚举类
    static enum SingletonEnum{
        //创建一个枚举对象,该对象先天为单例
        INSTANCE;
        private Singleton singletion;
        //私有化枚举的构造函数
        private SingletonEnum(){
            singletion=new Singleton();
        }
        public Singleton getInstnce(){
            return singletion;
        }
    }
 
    //对外撮合一个获取Singleton对象的静态方法
    public static Singleton getInstance(){
        return SingletonEnum.INSTANCE.getInstnce();
    }
    public static void main(String[] args) {
        System.out.println(Singleton.getInstance());
        System.out.println(Singleton.getInstance());
        System.out.println(Singleton.getInstance()==Singleton.getInstance());
    }

}

点赞
收藏
评论区
推荐文章
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
tornadofx演示分形图的绘制
枚举类中有抽象方法、有构造函数,每个值继承该方法实现自己的业务行为逻辑。combobox绑定枚举类。togglegroup包裹radiobutton,利用枚举类的值批量生成radiobutton查看演示:https://www.bilibili.com/video/av60656281/(https://www.oschina.net/actio
Wesley13 Wesley13
3年前
java 23种设计模式(五、单例模式)
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。单例模式的结构  单例模式的特点:单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。  饿汉式单例类publicclassEagerSingleton
Wesley13 Wesley13
3年前
java枚举类
使用enum声明,默认直接继承了java.lang.Enum类,而不是Object类;枚举类的对象是固定的,实例个数有限,不可以再new(),枚举对象后可以跟()。枚举元素必须位于枚举类体中的最开始部分,枚举元素后要有分号与其他成员分隔。枚举类的构造方法的权限修饰符默认是private;一旦枚举对象后面加上{},那么该对象实际是枚举匿名内部
Wesley13 Wesley13
3年前
Java枚举的小知识点
enum是jdk1.5引入的,使用它可以创建枚举类型,就像使用class创建类一样。enum关键字创建的枚举类型默认是java.lang.Enum(一个抽象类)的子类用法1常量一般定义常量都是publicstaticfinal…,现在可以把相关常量都放在一个枚举类里,而且枚举比常量提供更多方法1.enumsea
Wesley13 Wesley13
3年前
PHP单例模式
<?php/设计模式之单例模式$_instance必须声明为静态的私有变量构造函数和析构函数必须声明为私有,防止外部程序new类从而失去单例模式的意义getInstance()方法必须设置为公有的,必须调用此方法以返回实例的一个引
Wesley13 Wesley13
3年前
JAVA设计模式之单例设计模式
    单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。  在JAVA中实现单例,必须了解JAVA内存机制,JAVA中实例对象存在于堆内存中,若要实现单例,必须满足两个条件:  1.限制类实例化对象。即只能产生一个对象。
Wesley13 Wesley13
3年前
Java单例模式
什么是单例模式  单例模式是在程序中,一个类保证只有一个实例,并提供统一的访问入口。为什么要用单例模式节省内存节省计算如对象实例中的一样的,那就不用每次都创建一个对象方便管理因为单例提供一个统一的访问入口,不需要创建N多个对象,很多工具类都用了单例实现,如日志、字符串工具类
Wesley13 Wesley13
3年前
Java分享笔记:自定义枚举类 & 使用enum关键字定义枚举类
  在JDK1.5之前没有enum关键字,如果想使用枚举类,程序员需要根据Java语言的规则自行设计。从JDK1.5开始,Java语言添加了enum关键字,可以通过该关键字方便地定义枚举类。这种枚举类有自己的程序编写规则,并且具有一些特殊方法。  下面是笔者分别针对自定义枚举类和enum枚举类的程序设计。\1\自定义枚举类
Wesley13 Wesley13
3年前
C#单例
单例模式:步骤:1.定义静态私有对象2.构造函数私有化3.定义一个静态的,返回值为该类型的方法,一般以Getinstance/getInit为方法名称单例模式有懒汉和饿汉,最好使用饿汉1.饿汉式先实例化publicclassSingleton{privatestati