java--枚举类

枚举类

枚举类里面写的是对象,你也可以在下面写上成员方法或变量,这里面的对象可以调用这些方法,也可以说枚举类是用来存放固定个数的对象的。

格式:

public enum 枚举类名{

}

注意:枚举不能被继承,构造方法不能是公共的。

代码演示

public enum Demo8 {
    //枚举对象,直接写名字就可以,而且直接必须使用逗号,还有最重要的一点是所有枚举对象的类型必须一致,后面的括号表示构造方法有参,并且是字符串类型,当然也可以不带,那就表示无参
    sex("male"),name("jack");
    //声明一个私有变量
    private String adrress;
    //构造方法必须是私有的,每当初始化时,通过这个可以打印出括号里的字符串
    Demo8(String s) {
        System.out.println(s);
    }

    public int getAge(int age){
        return age;
    }
    public String getAdrress(String adrress){
        this.adrress=adrress;
        return adrress;
    }
}
public class Demo8Test {
    public static void main(String[] args) {

        //方法可以得到枚举对象的序号,从零开始
        System.out.println(Demo8.name.ordinal());

        //values方法可以得到枚举类的所有对象返回一个枚举类数组
        Demo8[] values = Demo8.values();
        for (Demo8 value : values) {
            System.out.print(value.name()+" ");
        }
        System.out.println("");

        //把枚举对象转变为字符串
        System.out.println(Demo8.sex.name());

        //虚拟机中的枚举对象只会有一份,把一个相同名字的字符串转化为枚举类型,看一下结果
        System.out.println(Demo8.valueOf("name") == Demo8.name);

        //用枚举类里的对象调用枚举类里的方法
        System.out.println(Demo8.name.getAdrress("西海岸423号"));
        System.out.println(Demo8.sex.getAge(10));
    }
}

结果

male
jack
1
sex name 
sex
true
西海岸423号
10

从以上结果中可以看出,当对象初始化时,是一起初始化的,并且从这个true中说明了,枚举的对象只会有一份,因此枚举枚举类中的对象名字不能相同。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值