Java基础之枚举

一、Java中使用enum关键字定义枚举类

 1 package test;
 2 /**
 3  * 泛型的使用
 4  * @author Administrator
 5  *
 6  */
 7 public class TestType {
 8
 9     public static void main(String[] args) {
10         Em[] values = Em.values();
11         //遍历枚举中的下标与之对应的值
12         for (Em em : values) {
13             System.out.println("枚举下标:"+em.ordinal()+"\t\t"+"枚举下标对应的名称:"+em.name());
14         }
15     }
16 }
17 /**
18  * 使用enum关键字定义的类为枚举类型
19  * 该类继承 Enum这个抽象类
20  * @author Administrator
21  *
22  */
23 enum Em{
24     aa,bb,cc;
25 }

注意:enum 与 Enum 的区别

  》enum是定义枚举类型的关键字,而Enum是一个抽象类

  》使用enum定义的枚举就相当于一个类继承了Enum这个抽象类

二、在Java枚举中,还可以定义属性、方法等,需要注意一下的要求:

  1、枚举中的定义的构造法方法不能用public声明

  2、枚举对象必须放在首行,随后才可以定义属性、构造、普通方法

 1 package test;
 2 /**
 3  * 泛型的使用
 4  * @author Administrator
 5  *
 6  */
 7 public class TestType {
 8
 9     public static void main(String[] args) {
10         //遍历枚举中的下标与之对应的值
11         for (Em em : Em.values()) {
12             System.out.println(em);
13         }
14     }
15 }
16 /**
17  * 使用enum关键字定义的类为枚举类型
18  * 该类继承 Enum这个抽象类
19  * @author Administrator
20  */
21 enum Em{
22     /**
23      * 由于枚举中没有了无参构造,
24      * 所以需要手动调用
25      */
26     AA("红色"),BB("绿色"),CC("蓝色") ;
27
28     private String title;
29
30     private Em(String title){
31         this.title = title;
32     }
33     @Override
34     public String toString() {
35         return this.title;
36     }
37
38 }

  1》、枚举还可以实现接口

  2》、可以在每一个枚举类中 的 每一个对象后面使用匿名内部类形式实现抽象方法

  3》、枚举类中还可以直接定义抽象方法,此时的每一个枚举对象分别覆写抽象方法

  4》、switch中可以使用枚举判断

  5》、枚举属于高级设计模式(反正我不习惯用)

原文地址:https://www.cnblogs.com/in-the-game-of-thrones/p/11273537.html

时间: 2024-08-01 20:01:22

Java基础之枚举的相关文章

【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-import.html#1.2.values方法的使用: Java基础笔记 – 枚举类型的使用介绍和静态导入 本文由arthinking发表于4年前 | Java基础 | 暂无评论 |  被围观 8,332 views+ 1.枚举(Enum):1.1.枚举类型中的两个静态方法:1.2.values方法的使用:

Java 基础之-枚举

目录(?)[-] 用法一常量 用法二switch 用法三向枚举中添加新方法 用法四覆盖枚举的方法 用法五实现接口 用法六使用接口组织枚举 用法七关于枚举集合的使用 DK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. Java代码 pu

【JAVA基础】枚举

枚举 将一组有限集合创建为一种新的类型,集合里面的值可以作为程序组件使用: 枚举基本特性 以下代码是枚举的简单使用: 使用values方法返回enum实例的数组 使用ordinal方法返回每个enum实例的次序,从0开始 使用compareTo方法比较两个enum实例 使用==来比较enum实例 使用getDeclaringClass方法返回enum实例所属的enum类 使用valueOf方法根据指定的名字返回enum实例 package enumerated; enum Shrubbery {

java基础篇---枚举详解

在JDK1.5之前,JAVA可以有两种方式定义新类型:类和接口,对于大部分面向对象编程,有这两种似乎就足够了,但是在一些特殊情况就不合适.例如:想要定义一个Color类,它只能有Red,Green,Blue三种,其他值则是错误,在JDK1.5之后便引入枚举类型. 枚举其实就是一种类型,跟int, char 这种差不多,就是定义变量时限制输入的,你只能够赋enum里面规定的值. public enum Color{ RED,GREEN,BLUE ; // 定义三个枚举的类型 }; 枚举中有三个取值

java 基础之枚举

问题:对象的某个属性的值不能是任意的,必须为固定的一组取值其中的某一个 解决办法: 1)  在setGrade方法中做判断,不符合格式要求就抛出异常 2)  直接限定用户的选择,通过自定义类模拟枚举的方式来限定用户的输入 写一个Grade类,私有构造函数,对外提供5个静态的常量表示类的实例 3)  jdk5中新定义了枚举类型,专门用于解决此类问题 4)  枚举就是一个特殊的java类,可以定义属性.方法.构造函数.实现接口.继承类 packagecn.itcast.enumeration; im

Java基础之枚举妙用

对于枚举,初学Java的时候可能我们就已经接触过了,但是在毕业前,其实一直都不知道真正工作里面枚举是怎么用的,枚举有什么用?接下来,博主就介绍枚举在实际工作中的一种使用场景,本文只适合初级的小菜鸟看哈,大神看了可别嘲笑这是水文哦,哈哈! 一.使用场景 在实际的工作中,比如我有一个选择家庭关系的下拉选择框,大家都是会是value和desc的组合,一般我们保存到数据库的都是value(英文),然后用户看到的是desc(中文).但是我很多个页面会用到这样的下拉框,甚至可能很多个系统会用到,需要保持数据

Java基础:枚举Enum

在某些情况下,一个类的对象是有限而且固定的,比如季节类,它只有4个对象:春.夏.秋.冬.这种实例有限而且固定的类,在Java里被称为枚举类. 1 手动实现枚举类 示例: package com.demo2; public class Season { public static final Season SPRING = new Season("春天", "趁春踏青"); public static final Season SUMMER = new Season(

java基础知识---枚举

枚举的用法.枚举的实现.枚举与单例.Enum 类 enum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中. 原始的接口定义常量 1 public interface IConstants { 2 3 String MON = "Mon"; 4 5 String TUE = "Tue"; 6 7 String WED = "Wed"; 8 9 String THU = "Thu

java 基础(枚举类)

1.枚举类也是一个类,也可以有属性,等等: public enum SeasonEnum{ SPRING, SUMMER, FALL, WINTER; } 这个是没有其他属性的. package com.creditharmony.adapter.testCase.test; public class EnumTest { public void judge(SeasonEnum s) { switch (s) { case SPRING: System.out.println("春天"