1、枚举类型
1.1、枚举类型可以用来取代以往定义常量的方式,定义语法:
public enum Constants{
constant_A, constant_B}
1.2、枚举类型的成员方法
Constants.values() #枚举类型成员以数组的形式返回
Constants.valueOf("abc") #把“abc”字符串转换为枚举实例
constant_A.compareTo( constant_B) #用于比较两个枚举对象在定义时的顺序,若constant_B在前,返回值为1,若constant_B在后,返回-1,同时定义返回0
constant_A.ordinal() #返回枚举成员的索引
1.3、枚举类型的构造方法
可以在枚举类型中添加构造方法,但是必须修饰为private型,定义了有参构造方法后,需要根据添加的构造方法的参数类型对枚举类型成员相应的使用构造方法
2、泛型
2.1、泛型类的定义
public class OverClass<T>{
private <T> over;
public <T> getOver{
return over;}
}
2.2、实例化一个泛型类对象
OverClass<String> over1=new OverClass<String>() #就确定的T所代表的数据类型,在调用getOver时就不再需要类型转换了
2.3、可以用泛型来声明一个数组,但是不可以用泛型来实例化
例如: private T[] arr=new T[10] #是不合法的
2.3、java中的框架集合已经被定义为泛型,常用的被泛型化的集合:
ArrayList, HashMap, HashSet, Vector
例如; ArrayLIist < String> list=new ArrayList<String>()
2.4、限制泛型可用类型
例如:public class a<T>{ } 加以限制变为 public clss a<T extends List>