jdk5新特性
自动装箱与拆箱
// 自动装箱:值转对象自动拆箱时小心NPE。
Integer n = 1;
// 自动拆箱:对象转值
int m = n;
静态导入
import static java.util.Collections.addAll;可变参数
public void method(Object... args) {}写工具方法时更加容易,如:
public staticIntrospector 文档参考booleanjava.util.Collections.addAll(Collection super T> c, T... elements)
BeanInfo info = Introspector.getBeanInfo(Xyz.class); // BeanInfo包含:BeanDescriptor, PropertyDescriptor, MethodDescriptor等我用的不多,有印象的只有PropertyDescriptor中的getReadMethod和getWriteMethod,绝大多数时是直接用反射。可以看看spring中的使用
范型
public class ArrayList基本功,在框架和工具方法中经常使用。extends AbstractList
List>for-each
List
List
List注解 Annotation 提供了强大的元数据能力,在编译时、文档、运行时提供了强大的支持,如今在各种框架中都有其深度的使用。list = new ArrayList ();
for (T ele : list) {
...
}
协变返回类型
@Override子类覆盖方法时返回的类型可以是父类返回类型的子类型
abstract class Parent {枚举
abstract Object getValue();
}
class Child extends Parent {
@Override
public ArrayList> getValue() {
return null;
}
}
enum Type {【jdk5新特性】最佳实践:在分布式系统中不使用枚举。一不用枚举一样能实现业务目标、二分布式系统中枚举容易成坑。
TYPE1, TYPE2
}
推荐阅读
- 我们重新了解付费。
- 华为旁!大社区、地铁新盘,佳兆业城市广场五期!
- 感恩之旅第75天
- 涉毒患者(新诗)
- 危险也是机会
- 新年第一部电影,一本满足
- 六步搭建ES6语法环境
- 以读攻“毒”唤新活动曹彦斌打卡第二天
- 六月更新的......
- 绘本讲师训练营【18期】14/21《我的情绪小怪兽》故事会新体验