原文: https://www.programiz.com/java-programming/enum-constructor

在本 Java 教程中,您可以在一个有效的示例的帮助下了解枚举构造器。

在学习枚举构造器之前,请确保了解 Java 枚举

在 Java 中,枚举类可能包含类似于常规类的构造器。 这些枚举构造器是

  • 私有 - 可在类中访问,或
  • 包专用 - 可在包中访问

示例:枚举构造器

  1. enum Size {
  2. // enum constants calling the enum constructors
  3. SMALL("The size is small."),
  4. MEDIUM("The size is medium."),
  5. LARGE("The size is large."),
  6. EXTRALARGE("The size is extra large.");
  7. private final String pizzaSize;
  8. // private enum constructor
  9. private Size(String pizzaSize) {
  10. this.pizzaSize = pizzaSize;
  11. }
  12. public String getSize() {
  13. return pizzaSize;
  14. }
  15. }
  16. class Main {
  17. public static void main(String[] args) {
  18. Size size = Size.SMALL;
  19. System.out.println(size.getSize());
  20. }
  21. }

输出

  1. The size is small.

在上面的示例中,我们创建了一个枚举Size。 它包含一个private枚举构造器。 构造器将字符串值作为参数,并将值分配给变量pizzaSize

由于构造器为private,因此我们无法从类外部访问它。 但是,我们可以使用枚举常量来调用构造器。

Main类中,我们将SMALL分配给枚举变量size。 然后,常量SMALL调用构造器Size,并将字符串作为参数。

最后,我们使用size来调用getSize()