摘要: 通常情况下,使用原生类型和并没有什么区别,但是有一种情况特别需要使用而不是原生类型,即捕获转换(因为未指定的通配符类型被捕获,并被转换为确切类型)。例如:class Holder{ private T value; public Holder(){} public Holder(T val){ value = val;} public void set(T val){value = val;} public T get(){ return value;} public boolean equals(Object obj){ return val... 阅读全文
posted @ 2013-08-19 16:53 chen54070121 阅读(1109) 评论(0) 推荐(0) 编辑
摘要: 所谓协变,就是父类和子类保持相同形式的变化。在java5.0中,只要子类方法与超类方法具有相同的方法签名,或者子类方法的返回值是超类方法的子类型,就可以覆盖。面向对象语言中,协变返回方法指的是一个子类在覆盖超类的方法的时候,方法的返回值可以被一个“更窄”的类型所替代。例如:class Collection { Iterator iterator() { ... } } class List extends Collection { @Override ListIterator iterator() { ... } } Iterator函数获得到当前集合的迭代器,... 阅读全文
posted @ 2013-08-19 14:40 chen54070121 阅读(860) 评论(0) 推荐(0) 编辑