首页 > 其他分享 >枚举类型

枚举类型

时间:2024-10-18 21:32:41浏览次数:1  
标签:info name Season 枚举 类型 public String

一、在jvm1.5之前创建枚举类的方法五步走


/*
    1. 创建枚举类的属性(成员遍历),必须是作为私有常量出现
    2. 必须将构造方法私有化,这是为了保证类的对象是有限个的目的
    3. 提供公共的静态的final方法给外界获取枚举类中多个对象
    4. 提供公共的获取属性的方法
    5. 重写toString()方法

 */
class Season{
    //1. 创建枚举类的属性(成员遍历),必须是作为私有常量出现
    private String name;
    private String info;

    //2. 必须将构造方法私有化,这是为了保证类的对象是有限个的目的
    private Season(String name, String info){
        this.name = name;
        this.info = info;
    }

    //3. 提供公共的静态的final方法给外界获取枚举类中多个对象
    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. 提供公共的获取属性的方法


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }

    @Override
    public String toString() {
        return "Season{" +
                "name='" + name + '\'' +
                ", info='" + info + '\'' +
                '}';
    }
}

public class SeasonDemo1 {
    public static void main(String[] args) {
        Season spring = Season.SPRING;
        Season summer = Season.SUMMER;

    }
}

二、在jvm1.5之后枚举类的写法

/*
    jdk1.5之后 java提供了一个关键字用于创建枚举类 enum
 */
enum Season2{
    //jdk1.5之后必须将有限个对象放在enum枚举类第一个开头位置,多个对象之间使用逗号隔开
    SPRING("春天","春暖花开"),
    SUMMER("夏天","烈日炎炎"),
    AUTUMN("秋天","秋高气爽"),
    WINTER("冬天","白雪皑皑");

    //1. 创建枚举类的属性(成员遍历),必须是作为私有常量出现
    private String name;
    private String info;

    //2. 必须将构造方法私有化,这是为了保证类的对象是有限个的目的
    private Season2(String name, String info){
        this.name = name;
        this.info = info;
    }

    //4. 提供公共的获取属性的方法
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }

    @Override
    public String toString() {
        return "Season{" +
                "name='" + name + '\'' +
                ", info='" + info + '\'' +
                '}';
    }
}

public class SeasonDemo2 {
    public static void main(String[] args) {
        Season2 spring = Season2.SPRING;
        System.out.println(spring.getName());
        System.out.println(spring.getInfo());
    }
}

标签:info,name,Season,枚举,类型,public,String
From: https://www.cnblogs.com/ndmtzwdx/p/18475098

相关文章

  • Flutter 获取设备网络类型
    前言现在有一个需求,需要能够知道手机端网络类型,如果是WiFi则去使用局域网通信。在这里我选用了connectivity_plus这个库connectivity_plus的平台支持安卓iOS系统苹果系统网络Linux视窗✅✅✅✅✅✅connectivity_plus的APIAPI描述checkConnectivity检查......
  • javascript-类型
    1.number使用64位浮点数表示范围+-1.797*10(308次方),+-5*10(-324次方),相当于C++的double整数-2(53次方)2(53次方)十六进制0x开头例0xff八进制0o开头0io377二进制0b开头使用e表示浮点数6.02e231.47e-322.数的计算,在math类中有很多方法。3.没有上溢,下溢。但有无限大无......
  • JavaScript从零学起 —— 数据类型(进阶篇3)
    说明:此文章用作个人学习记录,若有任何问题或建议欢迎大家在评论区讨论文章目录前言对象(Object)1.定义2.对象创建方式2.1使用对象字面量(ObjectLiteral)2.2使用Object()构造函数2.3使用自定义构造函数(ConstructorFunction)2.4工厂函数(FactoryFunction)2.5类(Cl......
  • 动态事件id反查事件类型
    简介项目中的事件派发系统,会动态生成唯一id并赋值给对应字段,当发生报错时,日志仅打印事件id,并不知道具体事件类型,故作此拓展。方案思路构建一个新的特性,将使用有事件id的类全部使用此特性注册一次获取到所有程序集,并将注册过此特性的类全部持有到在初始化时,将所有事件id记......
  • BigDecimalUtil工具类 Java 多种类型(Double, String, Integer)转换成BigDecimal 进行加
    工具说明没有什么太复杂的代码。先是通过方法名称确定返回值的类型(BigDecimal、Double、String)。然后大量的重载方法,用“穷举法”把BigDecimal、Double、String、Integer四种类型进行各种形式的两两组合,进行加减乘除运算。运算时非BigDecimal类型的参数会转化成BigDecim......
  • C++顺序结构(3)、数据类型_____教学
    一、设置域宽setw()输出的内容所占的总宽度成为域宽,有些高级语言中称为场宽。使用setw()前,必须包含头文件iomanip,即#include<iomanip>头文件iomanip,用来声明一些“流操作符”,需要一定格式输入输出时,就需要用到它,比较常用的有设置域宽、设置左右对齐、设置实数的精确度等。set......
  • PHP常量与数据类型
    PHP常量与数据类型PHP常量在PHP中,常量是值在脚本执行期间不会改变的量。常量使用define()函数或const关键字来定义。使用define()函数:define("GREETING","Hello,测试小罡!");echoGREETING;//输出:Hello,测试小罡!使用const关键字:constPI=3.14159;echoPI;//......
  • 【WPF】【C#】【代码记录】构造ComboBox下拉的数据源(字典类型)
    #region下拉privateDictionary<string,T>getComboSource<T>(paramsT[]types)whereT:Enum{varenumValues=types.Length>0?types:(T[])Enum.GetValues(typeof(T));returnenumValues.ToDictionary(o=>getTypeName(o),o=>......
  • 类型转换
    基础概念在C#中,类型转换是将一个数据类型的值转换为另一个数据类型的过程。C#中的类型转换可以分为两种:隐式类型转换和显式类型转换(也称为强制类型转换)。显式类型转换基础概念显式类型转换,即强制类型转换,需要程序员在代码中明确指定。显式转换是指将一个较大范围的数......
  • 数据类型
    基础概念在C#中,变量分为以下几种类型:值类型(Valuetypes)引用类型(Referencetypes)指针类型(Pointertypes)值类型(Valuetypes)值类型变量可以直接分配给一个值。它们是从类System.ValueType中派生的。值类型直接包含数据。比如int、char、float,它们分别存储数字、字符、......