java 枚举的定义与用法,java中枚举类型的使用

java 枚举的定义与用法,java中枚举类型的使用,Java浅析枚举类的使用

枚举类型可以代替过去常量的定义,即常量封装在类或接口中。此外,枚举类型还提供安全检查功能。这篇文章会告诉你Java中枚举类的用法,有需要的可以参考一下。

目录

1、枚举规则2、枚举数3、枚举类中的常用函数4、枚举类的实现5、枚举类使用中的注意事项概念:用enum关键字修饰的类成为枚举类。

1、枚举规则

枚举类的对象可以在类中定义,不支持重新创建它们。枚举类有构造函数,其他类也一样。可以有多种方法。枚举类的构造方法必须是私有的,所有成员变量都可以是公有和私有的。

原因:枚举类的构造函数只能在这个类中调用。因为不支持其他新对象,所以自然构造函数是私有的。

代码示例:

包com.meijulei

//枚举类

公共枚举类别{

a('小明',12),B('小花',22),C('小红',23),D('小兰',30),E('卢晓',20),F('黄晓',32);

公共字符串名称;

私人年龄;

私猫(){

}

private Cat(String a,int b){

name=a;

年龄=b;

}

公共void m1(){

System.out.println ('name:' name ',age:' age);

}

}

//调用

包com.meijulei

导入com . meijulei . cat;

公共类测试{

公共静态void main(String[] args) {

猫a=猫。a;

a . m1();

}

}

2、枚举的个数

注意:枚举数是指堆中的数,即枚举类中声明的对象数。

3、枚举类中常用函数

* *猫。C.ordinal()**函数,计算这个对象的哪个对象在枚举类中(从0开始计数)。猫。C.compareTo(猫。e)比较两个对象之间的差异,从前者中减去后者,

a('小明',12),B('小花',22),C('小红',23),D('小兰',30),E('卢晓',20),F('黄晓',32);

System.out.println(目录。e . ordinal());

System.out.println(目录。C.compareTo(猫。e));

//输出

//4

//-2

4、实现枚举类

接下来,我们来看一个简单的演示示例:

/**

* java枚举

*/

公共类枚举{

公共静态void main(String[] args) {

System.out.println(季节。春天);

System.out.println(季节。夏天);

System.out.println(季节。秋天);

System.out.println(季节。冬天);

}

}

//已定义枚举类

枚举季节{

//枚举定义的常量对象必须在前面。

春天(“春天”,“万物复苏”),

夏天('夏天','烈日'),

秋天(“秋天”、“硕果累累”),

冬天('冬天','严寒');

私有字符串名称;

私弦desc;

私人赛季(字符串名称,字符串desc) {

this.name=name

this . desc=desc;

}

公共字符串getName() {

返回名称;

}

公共字符串getDesc() {

归还desc;

}

@覆盖

公共字符串toString() {

返回“季节”

name='' name '\ ' '

,desc='' desc '\ ' '

'}';

}

}

输出:

季节{name='春天',desc='万物复苏' }

季节{name=' summer ',desc='灼热的太阳' }

季节{name='秋季',desc='硕果累累' }

季节{name='冬季',desc='严寒' }

5、枚举类的使用注意事项

当我们使用enum关键字开发一个枚举类时,我们会默认继承Eunm类,它是一个最终修饰类。

如果我们使用无参数的构造函数,括号可以直接从枚举中省略。

//枚举定义的常量对象必须在前面。

春天(“春天”,“万物复苏”),

夏天('夏天','烈日'),

秋天(“秋天”、“硕果累累”),

冬天('冬天','严寒'),

其他,狗屁;

季节(){

}

私人赛季(字符串名称,字符串desc) {

this.name=name

this . desc=desc;

}

至此,这篇关于Java枚举类的使用的文章已经介绍到这里了。更多相关Java枚举类内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: