Java,Enum类中为什么构造函数必须是私有的
2018-08-15 09:19
106 查看
枚举被设计成是单例模式,即枚举类型会由JVM在加载的时候,实例化枚举对象,你在枚举类中定义了多少个就会实例化多少个,JVM为了保证每一个枚举类元素的唯一实例,是不会允许外部进行new的,所以会把构造函数设计成private,防止用户生成实例,破坏唯一性。
枚举类型是单例模式的。你需要实例化一次,然后再整个程序之中就可以调用他的方法和成员变量了。枚举类型使用单例模式是因为他的值是固定的,不需要发生改变。阅读更多
相关文章推荐
- Java,Enum类中为什么构造函数必须是私有的
- java基础:在子类的构造函数中为什么必须调用父类的构造函数(与转型)
- 【Java】将构造函数声明为私有有什么作用?
- Java学习笔记-------执行语句为什么必须要放在方法里面???
- 为什么Java反射对象必须有一个无参数的构造方法?
- JAVA 想让类无法new,可以使用private将类的构造函数改为私有的,这样new的时候就会报错了
- java 为什么有时一个类有多个构造函数
- java 类中的属性为什么一般都是私有的
- Java中构造函数的权限可以是private吗?为什么
- Java接口中的成员变量为什么必须声明为public static final?
- Java接口中的成员变量为什么必须是public static final?
- 为什么虚函数必须是非静态成员函数 构造函数可以为static
- java中内部类访问局部变量的时候,为什么变量必须加上final修饰
- Java中为什么有的方法必须抛出异常,有的不用
- java中私有构造函数的作用
- 【java 构造函数】为什么子类一定要访问父类中的构造函数
- java 将构造方法变为私有的,为什么其他类不能创建该类的对象?
- 为什么虚函数必须是非静态成员函数 构造函数能为static吗?
- 牛客网Java刷题知识点之为什么static成员方法不能是抽象方法,其必须实现
- Java私有构造函数的使用