java枚举类介绍

2019-08-27  本文已影响0人  冻梨不是梨

首先看一个例子:

package test;
public enum EnumTest {
    STUDNT("liming", 12);
    String name;
    int age;
    EnumTest(String name, int age) {
        this.name = name;
        this.age = age;
    }
   public String getName() {
                return name;
      }
    public int getAge() {
            return age;
     }
    public static void main(String[] args) {
        System.out.println("name: "+ EnumTest.STUDNT.getName() + "\n"
                     + "age is: "+ EnumTest.STUDNT.getAge());
    }
}

上面这就是一个简单的枚举类。

要想使用枚举,首先认识到他就是一个类,不允许调用它的构造方法进行初始化。

那么,在使用枚举类的时候,是在什么时候进行初始化的呢? 接下来,我们一步一步的进行讲解。

首先,看下面的这段代码:

System.out.println("name: "+ EnumTest.STUDNT.getName() +"\n"+"age is: "+ EnumTest.STUDNT.getAge());

在上面的这段代码中,我们调用了EnumTest的STUDN,getName() 和getAge()方法,那么程序是怎么知道,要打印的那么和age 就是STUDNT后面对应的值呢?

其原因就是,在执行

EnumTest.STUDNT
​的时候,调了构造器:
EnumTest(String name,intage) {this.name = name;this.age = age;    }

进行了初始化,将“liming”赋值给了name,将12赋值给了age。

所以当调用getName()和getAge的时候,知道name是liming,年龄是12了。

上一篇 下一篇

猜你喜欢

热点阅读