概述: 琢一列举的意思
作用:是进行取值的规范和分类
格式: public enum 枚举名称{ . }
应用的特点:
1,枚举的本质是Java类,被final修饰的,不能被继承
2,,枚举值该枚举类的对象
3,枚举类的构造方法被私有了,无法直接创建对象
泛型
概述: 是jdk5中引入的特性,他提供了编译时类型安全检测机制
好处: 把运行时期的问题提前到了编译期间,避免了强制类型的转换
可以定义泛型的位置
定义在类后面<泛型类>
定义在接口后面<泛型接口>
定义在方法申明上<泛型方法>
泛型的三种格式
类
泛型类格式
修饰符 class 类名<泛型标记>
泛型类的使用
泛型类在创建对象时确定泛型的真实类型
类中引用到泛型的地方都会替换成具体类型
接口
修饰符 interface 接口名<泛型标记>
泛型接口的使用
实现类实现接口时确定泛型
接口中引用泛型的地方会替换成具体类型
方法
泛型方法格式
修饰符 <泛型标记> 返回值类型 方法名 (类型 变量名) {}
泛型方法的使用
调用方法,传参时确定泛型类型
方法中引用泛型的地方会替换成具体类型
泛型通配符上下限
规定的泛型(Car)
? super Car
泛型只能是Car或者Car的父类,规定了下边界
? extends Car
泛型只能是Car 或者Car的子类,规定了上边界
可变参数
格式:
修饰符 返回值类型 方法名( 参数类型.... 形参名)
注意
1, 可变参数本质是数组
2,一个方法只能有一个可变参数
3, 如果方法中有多个参数,可变参数要放在最后