枚举
- 定义
public enum枚举类名{
枚举1,枚举2,枚举3
}
-
枚举默认被final public static 修饰
-
通过枚举类.枚举 就可以调用
-
使用枚举的优势
(1) 类型安全
(2) 紧凑有效
(3) 和程序其他部分完美交互如switch语句
(4) 运行效率高
-
常用方法
方法 | 使用方法 | 含义 |
---|---|---|
Values() | 枚举类型名称.values() | 将枚举常量以成员数组的形式返回 |
ValueOf() | 枚举类型名称.valueOf(“abc”) | 将普通类型转为枚举实例 |
CompareTo() | 比较两个枚举实例的位置 | |
Ordinal() | 获取枚举成员的索引位置 |
-
枚举可以有自己的方法
-
常用用法
//定义 public enum EnumDemo { GUANLIYUAN(1, "管理员"), YUANGONG(2, "员工"), YONGHU(3, "用户"); int grade; String value; private EnumDemo() { } private EnumDemo(int grade, String value) { this.grade = grade; this.value = value; } public String getValue() { return value; } public int getGrade() { return grade; } } // 简单使用 public class main{ public static void main(String[] args){ System.out.println(EnumDemo.GUANLIYUAN.getValue()); } } // 结果 管理员
泛型
-
泛型,即“参数化类型”。泛型的本质是为了参数化类型(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。
-
泛型只能是类类型,不可以是使用基本数据类型
-
泛型有三种使用方式,分别为:泛型类、泛型接口、泛型方法
-
泛型通配符 ?,类型通配符一般是使用?代替具体的类型实参再直白点的意思就是,此处的?和Number、String、Integer一样都是一种实际的类型,可以把?看成所有类型的父类。
-
可以同时定义多个泛型 Demo<T,K,V>
-
可以使用extends关键字 Demo
-
可以使用通配符 Demo<?>