1,泛型(Generics)--为集合(collections)提供编译时类型安全,无需每刻从Collections取得一个对象就进行强制转换(cast)
2,增强的“for”循环(Enhanced For loop)--减少迭代器(iterator)的潜在错误(error-proneness)
3,自动置入/自动取出(Autoboxing/unboxing)--无需在基本类型(primitive types)(例如double)和包装类型(wrapper types)(例如Double)之间人工地进行转换。
4,类型安全的枚举(Typesafeenums)--提供类型安全枚举模式的各项好处。
5,静态导入(Static import)--无需在使用其他类的静态成员变量前缀其类名.这将使得代码更为简洁。
6,元数据(Metadata)--使编程人员避免编写样板化代码(boiler plate code),并提供机会进行宣告式程式设计(declarative programming)。
7,自动装包/拆包(Autoboxing/unboxing)
自动装包/拆包大大方便了基本类型数据和它们包装类地使用。
自动装包:基本类型自动转为包装类.(int >> Integer)
自动拆包:包装类自动转为基本类型.(Integer >> int)
8.可变参数(Varargs)
可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是函数声明中的最后一个参数:
public void write(Object... objs) {
for (Object obj: objs)
System.out.println(obj);
}
9.枚举(Enums)
枚举类型还提供了两个有用的静态方法values()和valueOf().
for (Color c : Color.values())
System.out.println(c);