chapter08-JKD5.0新特性(枚举、增强的for循环)

上传人:平*** 文档编号:46198774 上传时间:2018-06-23 格式:PPTX 页数:13 大小:1.38MB
返回 下载 相关 举报
chapter08-JKD5.0新特性(枚举、增强的for循环)_第1页
第1页 / 共13页
chapter08-JKD5.0新特性(枚举、增强的for循环)_第2页
第2页 / 共13页
chapter08-JKD5.0新特性(枚举、增强的for循环)_第3页
第3页 / 共13页
chapter08-JKD5.0新特性(枚举、增强的for循环)_第4页
第4页 / 共13页
chapter08-JKD5.0新特性(枚举、增强的for循环)_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《chapter08-JKD5.0新特性(枚举、增强的for循环)》由会员分享,可在线阅读,更多相关《chapter08-JKD5.0新特性(枚举、增强的for循环)(13页珍藏版)》请在金锄头文库上搜索。

1、JAVA 核心技术(中级) 刘彬 微博 http:/ 5.0新特性o 枚举o 增强的for循环枚举类v在某些情况下, 一个类的对象是有限而且固定的(例 如:季节类, 行星类,日期类), 这种实实例有限而且 固定的类类, 在 Java 中被称为为枚举类举类v手动实现 枚举类: 通过 private 将构造器隐藏起来 把这个类的所有可能实例都使用 public static final 修饰 提供一个静态方法根据给定的特定参数返回相应的实例 属性不应允许被改动, 所以应该使用 private final 修饰手工实现 枚举类 示例代 码为什么需要枚举v为什么需要枚举? 一些方法在运行时,它需要的

2、数据不能是任意的,而 必须是一定范围内的值,此类问题 在JDK5以前采用 自定义带有枚举功能的类解决,Java5以后可以直接 使用枚举予以解决。枚举类和普通类的区别v枚举类 和普通类的区别: 使用 enum 定义的枚举类 默认继 承了 java.lang.Enum 类 枚举类 的枚举类 的构造器只能使用 private 访问 控制符 所有实例必须在枚举类 中显式列出(, 分隔 ; 结尾). 列 出的实实例系统统会自动动添加 public static final 修饰饰 所有的枚举类举类 都提供了一个 values 方法, 该方法可以很 方便地遍历所有的枚举值枚举类特性v 枚举类具有如下特性:

3、 枚举类 也是一种特殊形式的Java类。 枚举类 中声明的每一个枚举值 代表枚举类 的一个实例对象。 与java中的普通类一样,在声明枚举类时 ,也可以声明属 性、方法和构造函数,但枚举类 的构造函数必须为 私有的( 这点不难理解)。 枚举类 也可以实现 接口、或继承抽象类。 JDK5中扩展了swith语句,它除了可以接收int, byte, char, short外,还可以接收一个枚举类 型。 若枚举类 只有一个枚举值 ,则可以当作单例设计 模式使用。 枚举类的属性v枚举类对举类对 象的属性不应应允许许被改动动, 所以应该应该 使用 private final 修饰饰。v枚举类的使用 pri

4、vate final 修饰的属性应该在 构造器中为其赋值。v若枚举类显 式的定义了带参数的构造器, 则在 列出枚举值时 也必须对应 的传入参数。使用 Enum 定义的 Season实现接口的枚举类v和普通 Java 类一样枚举类可以实现一个或多 个接口v若需要每个枚举值举值 在调调用实现实现 的接口方法呈 现现出不同的行为为方式, 则则可以让让每个枚举值举值 分 别别来实现该实现该 方法增强for循环v 引入增强for循环的原因:在JDK5以前的版本中,遍 历数组或集合中的元素,需先获得数组的长度或集合 的迭代器,比较麻烦! v 因此JDK5中定义了一种新的语法增强for循环, 以简化此类操作。增强for循环只能用在数组组、或实实 现现Iterator接口的集合类上 v 语法格式: for(变量类型 变量 :需迭代的数组或集合)增强for循环v 使用增强for循环的几个注意事项(以下程序的输出结果?)int arr = new int5; for(int num : arr) num = 1; System.out.println(arr0);List list = new ArrayList(); list.add(“xxx“); for(String str : list) str = “yyy“; System.out.println(list.get(0);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号