枚举类与注解

枚举类与注解

枚举类

1.枚举类的使用

  • 什么情况下使用枚举类?

    • 有的时候一个类的对象是有限且固定的,这种情况下我们使用枚举类就比较方便
    • 当需要定义一组常量的时候,建议使用枚举类
  • 为什么推荐使用枚举类而不推荐使用常量代替枚举类

    • **枚举类更加直观,类型安全。**使用常量会有以下几个缺陷:

      1. 类型不安全。若一个方法中要求传入季节这个参数,用常量的话,形参就是int类型,开发者传入任意类型的int类型值就行,但是如果是枚举类型的话,就只能传入枚举类中包含的对象。

      2. 没有命名空间。开发者要在命名的时候以SEASON_开头,这样另外一个开发者再看这段代码的时候,才知道这四个常量分别代表季节。

2.自定义枚举类

如何定义枚举类?

  • 1.JDK 5.0之前,自定义枚举类
  • 2.JDK 5.0之后可以使用enum关键字定义枚举类

示例:

public class SeaonTest {
   
    public static void main(String[] args) {
   
        Season spring = Season.SPRING;
        System.out.println(spring);
        //Season{seasonName='春天', seasonDesc='春'}
    }
}
//自定义枚举类
class Season{
   

    //1.声明Season对象的属性:privata final修饰
    private final String seasonName;
    private final String seasonDesc;

    //2.私有化类的构造器
    private Season(String seasonName,String seasonDesc){
   
        this.seasonDesc=seasonDesc;
        this.seasonName=seasonName;
    }

    //3.提供当前枚举类的多个对象
    public static final Season SPRING = new Season("春天","春");
    public static final Season SUMMER = new Season("夏天","夏");
    public static final Season AUTUMN = new Season("秋天","秋");
    public static final Season WINTER = new Season("冬天","冬");

    //4.其他诉求:
    // 1.获取枚举类对象的属性
    public String getSeasonName() {
   
        return seasonName;
    }

    public String getSeasonDesc() {
   
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值