欢迎来到天天文库
浏览记录
ID:43359037
大小:91.50 KB
页数:18页
时间:2019-10-08
《Java程序 第17章 JDK 1.5以上版本的新功能──枚举》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第17章JDK1.5以上版本的新功能——枚举枚举简介枚举的作用枚举的用法枚举类和枚举关键字类集对于枚举的支持深入了解枚举17.1枚举简介在生活中,有很多很多关于枚举的例子,例如上面提到的表示星期的SUNDAY,MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,就是一个枚举17.2枚举的作用【范例17-1】在未出现枚举关键字前如何使用枚举功能。这是在JDK1.5以前,枚举没有被运用到Java中时所采用的一种操作形式,通过此范例来了解在枚举没有被引用之前,引入类
2、似对象时的情况【范例17-2】通过构造方法调用枚举类型。当枚举类型被创建的同时,需要在类型中创建构造方法,以便于在今后使用中调用,JDK1.5之前,枚举类型的创建和调用都非常复杂【范例17-3】在枚举中使用接口17.3枚举的用法17.1.1常见的枚举定义方法17.1.2在程序中使用枚举17.1.3在switch语句中使用枚举17.3.1常见的枚举定义方法在枚举类型中,一般的定义形式为enum枚举名{枚举值表};【范例17-4】枚举在Java中的确切含义。本例是在JDK1.5之后,也就是当枚举被引入到Java
3、中之后,进行创建枚举类型结构的代码。通过范例17-4与范例17-1的对比,来了解Java改进过程中,对相同类型对象的不同设置方法17.3.2在程序中使用枚举【范例17-5】调用全新的枚举类型。本例是关于对范例17-4中创建的Color枚举类型的调用程序,程序中会讲解对于通过Enum关键字创建的枚举类型的调用方法。运行以下代码将得到一个创建的枚举类型的其中一个取值:RED17.3.3在switch语句中使用枚举【范例17-6】在switch中使用枚举。是创建的一个Switch语句,通过Switch调用枚举类型
4、Color完成对于枚举的类型的筛选17.4枚举类和枚举关键字17.4.1枚举类17.4.2枚举关键字17.4.3枚举类与枚举关键字的区别17.4.1枚举类枚举类(Enum类)是在Java..lang包下定义个的一个公共类,他的作用是用来构造新的枚举类型【范例17-7】通过枚举类构造方法得到对象取值范围。本例是通过调用在Enum类中的方法values()来的到枚举类型中各个对象的取值范围。通过实例看到在Enum类中所包含方法的调用方式,同时了解Enum类的作用17.4.2枚举关键字相对于枚举类(Enum类),
5、枚举关键字(enum关键字)则是定义的一个枚举类型【范例17-8】是通过对于Enum类中的ordinal()方法的调用,来输出枚举类型中每一个对象的编号,在没有对编号做出特殊声明时,Java虚拟机一般将被创建的枚举类型对象自动编号,编号从0开始17.4.3枚举类与枚举关键字的区别【范例17-9】调用Enum类中valueof()方法。了解如何对Enum类中受保护方法的调用和控制17.5类集对于枚举的支持17.5.1EnumMap17.5.2EnumSet17.5.1EnumMapMap是在Java中的一个类
6、,如同其他的类一样,EnumMap是Map接口的子类,操作的形式与Map是一致的【范例17-10】使用EnumMap操作类。定义一个关于EnumMap方法的程序,介绍怎样使用EnumMap这样一个类集的操作类17.5.2EnumSetEnumSet本身是Set接口的子类,但是在此类中并没有任何的构造方法定义,表示构造方法被私有化【范例17-11】测试EnumSet静态方法。测试在EnumSet中定义的静态方法,通过对定已在EnumSet中方法的调用,了解EnumSet的特性和作用【范例17-12】调用non
7、eof()方法。对同样包含在EnumSet类中的不同方法的调用,来测试EnumSet方法17.6深入了解枚举17.6.1枚举的构造方法17.6.2枚举的接口17.6.3在枚举中定义抽象方法17.6.1枚举的构造方法【范例17-13】定义枚举的构造方法对枚举类型Color定义了两个构造方法,分别是getName()和setName(),在枚举中定义构造方法需要完全按照之后定义的构造方法进行调用17.6.2枚举的接口【范例17-14】创建枚举接口。本例是新创建的一个接口,其中声明了一个方法getColor()【
8、范例17-15】对新建接口抽象方法的调用。对接口中定义的抽象方法的调用,并且,在后期声明的枚举类型中,任何一个对象都必须分别实现接口中的抽象方法【范例17-16】通过代码测试上面实现的接口类型17.6.3在枚举中定义抽象方法【范例17-17】定义枚举的抽象方法。直接在枚举中定义抽象方法,其中每个对象都必须单独实现此方法【范例17-18】测试在枚举汇总定义的抽象方法。本例是对范例17-14的测试,通过测试可以得到,
此文档下载收益归作者所有