一 泛型的小知识点
(1) 使用System.getProperties() ,可以返回系统的环境变量
(2) 泛型, 即为变量类型的参数化 ;
(3)使用泛型实例化的两个对象,如果它们的变量参数不一致,那么两者之间不能相互赋值 ,相当于两个不同类的对象;
如 : class AAA<T> {} ;
AAA<String> aaa = new AAA<String> ;
AAA<Integer> bbb = new AAA<Integer> ;
aaa= bbb ; ---------------------------------错误
(4)也可以不使用泛型,那么泛型代表的参数类型就在实际使用的使用,为Object类型
二 枚举
(1) 每一个定义的枚举类型,都是继承自java.lang.enum类 ,每个成员都是 public , static , final
(2) 每个成员都是 定义的枚举类型的一个实例
使用枚举的简单例子
a) enum 和 EnumSet
import java.util.EnumSet;
public class TestEnumSet {
public static void showEnumSet(EnumSet<ColorEnum> enumSet){ //此方法遍历ColorEnum , 打印出来
for(ColorEnum colorEnum : enumSet){
System.out.println(colorEnum);
}
}
public static void main(String[] args) {
EnumSet<ColorEnum> enumSet = EnumSet.of(ColorEnum.RED ,ColorEnum.GREEN );
showEnumSet(enumSet );
showEnumSet(EnumSet.complementOf(enumSet));
}
}/**
* 定义一个Enum
* @author Administrator
*
*/enum ColorEnum{
RED , GREEN , BLUE , BLACK
}
b) Enum 和 EnumMap
import java.util.EnumMap;
import java.util.Map;public class TestEnumMap {
public static void main(String[] args) {
Map<Action , String> map = new EnumMap<Action , String> (Action.class) ;
map.put(Action.TURN_LEFT, "向左转");
map.put(Action.TURN_RIGHT, "向右转");
map.put(Action.MIDDLE, "中间");
for(Action action : Action.values()){
System.out.println(map.get(action));
}
}
}enum Action {
TURN_LEFT , TURN_RIGHT , MIDDLE
}