前几天看到一个帖子,有一个枚举类型,但是其中的元素带着不同的参数和参数个数,问这个到底什么情况:
随手写了一个代 记录记录,:
先建一个类Student:
package com.zsq.Enum;
public class Student {
private int id;
private String name;
public Student(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
然后写一个枚举类型:
package com.zsq.Enum;
/*
*
* 枚举中的元素都是该枚举的对象,因此枚举中的元素的构造都是根据枚举中默认的构造方式进行的(无参的构造方法),如果定义了构造方法
* 那么这个时候,枚举中的构造方法都必须按照给定的构造方法进行(枚举中的元素都是该枚举的对象,所以必须按照给出的构造方法进行构造),
* 如果要每个元素都具有一个方法,比如getDay()方法,那么可以在该枚举中定义一个抽象的方法,那么每一个元素都得去实现这个方法,就达到了都具有