Java泛型应该注意的细节

原创 2008年09月28日 14:59:00
1、不可以用一个本地类型(如int   float)来替换泛型.比如List<Integer>不能用List<int>型式

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

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

4、不可以定义泛型数组

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

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

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

8、根据同一个泛型类衍生出来的多个类之间没有任何关系,不可以互相赋值,即Pair<Number> p1; Pair<Integer> p2;   p1=p2; 这种赋值是错误的。

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

JAXB--@XmlElementWrapper注解和泛型一起使用(三)

当java对象的某个属性使用泛型时,普通对象都没问题,但是遇到HashSet这种集合类封装的元素时,就会出现元素内容序列化不出来的问题,详见如下:   一、示例: 第一步:定义jav...
  • u013615806
  • u013615806
  • 2015年12月15日 15:06
  • 2297

java基础增强(泛型,反射, 注解,日志)

泛型// 运行时期异常 @Test public void testGeneric() throws Exception { // 集合的声明 Lis...
  • guanhang89
  • guanhang89
  • 2016年08月20日 00:05
  • 1102

关于接口的定义和使用,几点需要注意的问题

1、在接口中定义的成员变量:变量默认属于public static final类型,也就是静态不可修改的变量,即为常量了,下面几种写法都可以,java在编译时会统一处理成public static f...
  • u010698072
  • u010698072
  • 2016年08月14日 23:16
  • 1474

黑马程序员--Java基础加强--14.利用反射操作泛型III【解析关于泛型类型的细节信息的获取方法】【Method与泛型相关的方法】【个人总结】

利用反射操作泛型III 解析关于泛型类型的细节信息的获取方法 Method与泛型相关的方法 ----------- android培训、java培训、java学习型技术博客、期待与您交流! ---...
  • u011406124
  • u011406124
  • 2013年08月09日 15:26
  • 1943

泛型 (下) - 细节和局限性

35节介绍了泛型的基本概念和原理,上节介绍了泛型中的通配符,本节来介绍泛型中的一些细节和局限性。 这些局限性主要与Java的实现机制有关,Java中,泛型是通过类型擦除来实现的,类型...
  • kyi_zhu123
  • kyi_zhu123
  • 2016年10月28日 18:39
  • 95

学习java应该注意的一些细节(转载)

对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于CSDN的经典老贴。...
  • jiang617325814
  • jiang617325814
  • 2011年04月25日 13:59
  • 573

【Java 你应该知道的】 泛型01

为什么使用泛型        通过泛型可以定义类型安全的数据结构,而无须使用实际的数据类型,这能够显著提高性能并得到更高质量的代码。我们可以简单总结为“可扩展”,“更安全”。        回忆一下J...
  • bodhixu
  • bodhixu
  • 2017年07月26日 16:19
  • 88

【系列】重新认识Java——泛型(通配、特性和注意点)

上一篇文章介绍了Java泛型中的基础及原理,本文将继续研究有关Java泛型的内容。本文的主要内容有: 泛型的特性 泛型通配 泛型类与普通类的不同点,也是日常开发要主要的点...
  • xialei199023
  • xialei199023
  • 2017年03月18日 10:26
  • 1041

Java泛型的注意事项以及使用

为什么要用泛型呢?JDK5以前,对象保存到集合中就会失去其特性,取出时通常要程序员手工进行类型的强制转换,这样不可避免就会引发程序的一些安全性问题。       比如:           泛...
  • WillCold
  • WillCold
  • 2013年10月18日 10:22
  • 998

Java 一些值得注意的细节

  • 2014年04月23日 15:14
  • 23KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java泛型应该注意的细节
举报原因:
原因补充:

(最多只允许输入30个字)