Java高级语言特征讲述.ppt

枚举类型 枚举类型的定义: [public] enum 枚举类型名 [implements 接口名表] { 枚举常量定义 [枚举体定义] } 枚举声明: public/default:可被包外类访问 / 只能在同一包中访问 所有枚举类型都隐含继承java.lang.Enum类,故不能再继承其他任何类 枚举类型 枚举类型的定义: [public] enum 枚举类型名 [implements 接口名表] { 枚举常量定义 [枚举体定义] } 枚举常量定义:常量1[,常量2[, … 常量n]] [;] 如果没有枚举体部分,则“;”可省略 枚举常量实际上是枚举类型的static和final的实例,加载枚举类型时,调用枚举类型的构造方法创建这些实例 如果在枚举体中定义了构造方法,则在定义枚举常量时可采用“常量(参数1,参数2, …)”的形式 枚举类型 枚举类型的定义: [public] enum 枚举类型名 [implements 接口名表] { 枚举常量定义 [枚举体定义] } 枚举体定义: 可以包含变量、构造方法和成员方法 构造方法只能为private,保证用户不会创建新的枚举常量 枚举类型 枚举类型的方法 每个枚举类型都具有java.lang.Object类和java.lang.Comparable接口中可以被继承的方法 编译器在创建枚举类型时也自动加入一些方法,如: ElementType[] values():返回一个数组,数组包含该枚举类型的所有枚举常量,且数组中的元素严格保持其在枚举类型中的声明顺序 String name():返回当前枚举常量的名字 int ordinal():返回该枚举常量在声明中的次序值 EnumType valueOf(String):获得枚举常量名字符串对应的枚举常量实例 enum Week { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY } public class EnumValuesTest { public static void main(String args[]) { for (Week w : Week.values()) { System.out.print(+()+,+w.ordinal() + ; ); } System.out.println(); System.out.println(Week.valueOf(SUNDAY).name()); } } enum Coin { PENNY(1), NICKEL(5), DIME(10), QUARTER(25); private final int value; Coin(int value) { this.value = value; } public int value() { return value; } } enum CoinColor { COPPER, NICKEL, SILVER } public class CoinTest { public static void main(String[] args) { for (Coin c : Coin.values()) { System.out.print(c + : + c.value() + , ); switch (c) { case PENNY: System.out.println(CoinColor.COPPER); break; case NICKEL: System.out.println(CoinColor.NICKEL); break; case DIME: case QUARTER: System.out.println(CoinColor.SILVER); break; } } } } 静态变量、方法与初始化程序块 final关键字 抽象类与接口 集合类 枚举类型 Wrapper类 Wrapper类 Wrapper将基本类型表示成类,每个基本数据类型在java.lang包中都有一个对应的Wrapper类 每个Wrapper类对象都封装了基本类型的一个值 基本数据类型 Wrapper类 boolean Boolean byte Byte char Character short Short int Integer long Long float Float double Double Wrapper类 Wrapper类实例的构

文档评论(0)

1亿VIP精品文档

相关文档