小白学java

小白学java第24天

枚举(enumeration)

        实现方式:1.自定义类实现枚举2.enum实现枚举

自定义类实现枚举:

        1.将构造器私有化,目的是防止直接被new

        2.杜绝setXxx方法,防止属性被修改

        3.去 类的内部,直接创建固定的对象

注意:

        1.不需要提供set方法,因为枚举的对象值通常为只读

        2.对枚举对象/属性使用final+static共同修饰,实现底层优化

        3.枚举对象名通常使用全部大写,常量的命名规范

        4.枚举对象根据需要也可以有多个属性

enum实现枚举:

        1.使用关键字enum代替关键字class

        2.直接使用 常量名(实参列表)代替生成对象的步骤

        3.如果有对个常量(对象),使用 , 号间隔即可

        4.如果使用enum来实现枚举,要求将定义常量对象写在前面

注意:

        1.使用enum关键字开发一个枚举类是,默认汇集成Enum类(可以用javap验证)

        2.如果使用无参构造器,则实参列表和小括号都可以省略;

        3.如果有多个常量(对象),使用 , 号间隔,最后有一个分号结尾

        4.枚举对象必须放在枚举类的行首

enum常用方法:

        1.toString:返回当前对象名,子类可以重写
        2.name:返回当前对象名(常量名),子类不能重写
        3.ordinal:返回当前对象的位置号,默认从0开始
        4.values:返回当前枚举类中所有的常量
        5.valueOf:将字符串转化为枚举对象,要求字符串必须为已有的常量名
        6.compareTo:比较快两个枚举常量,比较的就是序号 前者比后者大返回正值,小就返回负值,相等返回0
注意:
        
        1.enum默认继承Enum类由于java的单继承机制不能继承其他的类
        2.和其他类一样枚举类可以实现接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值