动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

Java泛型的使用注意事项

05-13 11:40 838浏览
举报 T字号
  • 大字
  • 中字
  • 小字

在Java中,如果定义的一个类或接口有一个或多个类型变量,则可以使用泛型。Java泛型是Java SE1.5中引入的一个新特性,其本质是参数化类型,能够消除源代码中的许多强制类型转换,提高代码的运行效率。尽管Java泛型为Java编程带来了种种好处,但是使用不当的话也会造成许多的问题,因此,我们应该避免一些不必要的麻烦,注意合理使用Java泛型。

使用Java泛型应该注意如下几点:

1.在定义一个泛型类时,在“<>”之间定义形式类型参数,例如:“class TestGen<K,V>”,其中“K”,“V”不代表值,而是表示类型。

2.实例化泛型对象时,一定要在类名后面指定类型参数的值(类型),一共要有两次书写。

3.泛型中<Kextends ObjecD,extends>并不代表继承,它是类型范围限制。

4.使用泛型时,泛型类型必须为引用数据类型,不能为基本数据类型,Java中的普通方法,构造方法,静态方法中都可以使用泛型,方法使用泛型之前必须先对泛型进行声明,可以使用任意字母,一般都要大写。

5.不可以用一个本地类型(如int float)来替换泛型。

6.运行时类型检查,不同类型的泛型类是等价的(Pair与Pair是属于同一个类型Pair),这一点要特别注意,即如果obj instance of Pai == true的话,并不代表objget First()的返回值是一个String类型。

7.泛型类不可以继承Exception类,即泛型类不可以作为异常被抛出。

8.不可以定义泛型数组。

9.不可以用泛型构造对象,即:first = new T();是错误的。

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

11.不要在泛型类中定义equals(Tx)这类方法,因为Object类中也有equals方法,当泛型类被擦除后,这两个方法会冲突。

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

13.若某个泛型类还有同名的非泛型类,不要混合使用,坚持使用泛型类。

Java泛型作为Java SE引入的一个重要特性,在动力节点在线的视频课程中也多次讲到,毫无疑问,掌握Java泛型是Java基础的重中之重,但是我们同时也应该牢记容易被我们忽视的注意事项,避免使用Java泛型适得其反。

0人推荐
共同学习,写下你的评论
0条评论
代码小兵345
程序员代码小兵345

44篇文章贡献168626字

相关课程 更多>

作者相关文章更多>

推荐相关文章更多>

Java面试题及答案整理

提枪策马乘胜追击04-21 20:01

Mybatis返回值类型

代码小兵87207-15 12:10

Java string类详解

杨晶珍05-11 14:54

6道经典算法面试题

杨晶珍05-12 16:39

深入理解JVM虚拟机

杨晶珍05-12 17:30

发评论

举报

0/150

取消