使用Java泛型应该注意的几个地方

文章作者 100test 发表时间 2007:10:19 12:04:09
来源 100Test.Com百考试题网


1、不可以用一个本地类型(如int float)来替换泛型

2、运行时类型检查,不同类型的泛型类是等价的(Pair与Pair是属于同一个类型Pair),
这一点要特别注意,即如果a instanceof Pair==true的话,并不代表a.getFirst()的返回值是一个String类型

3、泛型类不可以继承Exception类,即泛型类不可以作为异常被抛出

4、不可以定义泛型数组

5、不可以用泛型构造对象,即first = new T(). 是错误的

6、在static方法中不可以使用泛型,泛型变量也不可以用static关键字来修饰

7、不要在泛型类中定义equals(T x)这类方法,因为Object类中也有equals方法,当泛型类被擦除后,这两个方法会冲突

8、根据同一个泛型类衍生出来的多个类之间没有任何关系,不可以互相赋值

即Pair p1. Pair p2. p1=p2. 这种赋值是错误的。

9、若某个泛型类还有同名的非泛型类,不要混合使用,坚持使用泛型类
Pair managerBuddies = new Pair(ceo, cfo).
Pair rawBuddies = managerBuddies. 这里编译器不会报错,但存在着严重的运行时错误隐患

相关文章


在java中将对象转化为byte数组的方法
使FileWriter可以写utf-8的解决方法
jsecli e的安装以及中文问题
使用swt做界面,让窗口大小固定的方法
使用Java泛型应该注意的几个地方
Entity回调和监听器使用方法
a ert(断言)的使用方法
彻底分清Overload(重载)和Override(重写)
sleep()和wait()有什么不同?
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛