欢迎来到双子树教育网!
机构档案

在线交谈:点击这里给我发消息

咨询热线:159-0741-2407

快速报名,会有咨询师与您联系

学校评价(我要提问/点评)

  • 学校被点评:1
  • 好评(100%)
  • 中评(0%)
  • 差评(0%)

资料认证

    已通过身份证认证 已通过身份证认证

    已通过办学许可认证 已通过办学许可认证

  • 学校浏览人次:
  • 加盟时间:2019年11月15日
动态

JavaSE面试题(六):泛型

发布者:长沙达内教育 发布时间:2021-01-17 来源:长沙达内教育

Q:什么是泛型?

Java泛型( generics)是JDK 5中引?的?个新特性, 允许在定义类和接口的时候使?类型参数( type parameter) 。

声明的类型参数在使?时?具体的类型来替换。泛型最主要的应?是在JDK 5中的新集合类框架中。

泛型最?的好处是可以提?代码的复?性。以List接口为例,我们可以将String、 Integer等类型放?List中, 如不?泛型, 存放String类型要写?个List接口, 存放Integer要写另外?个List接口, 泛型可以很好的解决这个问题。

达内教育

Q:什么是类型擦除?

通过类型参数合并,将泛型类型实例关联到同一份字节码上。

编译器只为泛型类型生成一份字节码,并将其实例关联到这份字节码上。

泛型是通过类型擦除来实现的,编译器在编译时擦除了所有类型相关的信息,所以在运行时不存在任何类型相关的信息。例如 List在运行时仅用一个List来表示。这样做的目的,是确保能和Java 5之前的版本开发二进制类库进行兼容。你无法在运行时访问到类型参数,因为编译器已经把泛型类型转换成了原始类型。

类型擦除的主要过程如下:

1.将所有的泛型参数用其最左边界(最顶级的父类型)类型替换。

2.移除所有的类型参数。

以上就是 长沙达内教育 小编为您整理 JavaSE面试题(六):泛型 的全部内容,更多学习资讯,课程费用,培训时间可咨询在线老师!
校区地址
  • 乘车路线:电话预约
  • 授课地址:

地理位置 Location