Java基础——泛型(面试问题)

泛型和上一篇博客《Java中常用关键字》一样,是在面试Java基础内容时,比较容易被问到的问题。

所以这篇博客继续总结Java基础部分——泛型的相关知识,包括——

目录

  1. 什么是泛型;
  2. 泛型的实现原理;
  3. 泛型的特性;
  4. 使用场景;
  5. 测试用例;
  6. 泛型的具体使用;(泛型类,泛型接口,泛型通配符,泛型方法,泛型数组)
  7. 静态方法与泛型;
  8. 为传入的泛型实参进行上下边界的限制;

1、什么是泛型——

Java基础——泛型(面试问题)_第1张图片

2、泛型的实现原理——
       Java 的泛型是伪泛型,Java 中的泛型基本上都是在编译器这个层次来实现的,在生成的 Java 字节码中是不包含泛型中的类型信息的,使用泛型的时候加上的类型参数,会在编译器在编译的时候去掉。

3、泛型的特性——

Java基础——泛型(面试问题)_第2张图片

Java基础——泛型(面试问题)_第3张图片

4、使用场景——
JAVA 中泛型的使用:

         java 中集合使用了泛型,Future,WeakReference,Class也都使用了泛型
一些使用场景:

  • 不想写多个重载函数的场景。
  • 约束对象类型的场景,可以定义边界(T extends ...),如 JDK 集合 List,Set。
  • 用户希望返回他自定义类型的返回值场景,如 Json 返回 Java bean。
  • 在用反射的应用中,也经常会用到泛型,如 Class
  • 对网页,对资源的分析,返回场景,一般都有泛型。

5、测试用例——

Java基础——泛型(面试问题)_第4张图片

6、泛型的具体使用(泛型类、泛型接口、泛型方法、泛型通配符、泛型数组)——

①泛型类:

Java基础——泛型(面试问题)_第5张图片

Java基础——泛型(面试问题)_第6张图片

②泛型接口:

Java基础——泛型(面试问题)_第7张图片

Java基础——泛型(面试问题)_第8张图片

③泛型方法

Java基础——泛型(面试问题)_第9张图片

④泛型通配符:

Java基础——泛型(面试问题)_第10张图片

⑤泛型数组:

Java基础——泛型(面试问题)_第11张图片

7、静态方法与泛型——

Java基础——泛型(面试问题)_第12张图片

8、为传入的泛型实参进行上下边界的限制——

Java基础——泛型(面试问题)_第13张图片

关于泛型的相关知识就是以上了,面试的时候一样,尽量口语化,最好能够根据不同的点举个例子说明~

 

 

 

你可能感兴趣的:(java,面经)