当前位置:  首页>> 技术小册>> Java面试指南

泛型概述

Java中的泛型是一种参数化类型的机制,允许程序员在定义类、接口、方法时使用一个或多个类型参数。这个类型参数在使用时,被实际类型替换,帮助程序员编写更加通用的代码。泛型的好处在于能够提高代码的重用性,降低代码的耦合度,以及避免一些类型转换的错误。

代码示例
以下是一个简单的Java泛型代码示例,实现了一个支持不同类型元素的列表:

  1. public class MyList<T> {
  2. private T[] elements;
  3. public MyList(int size) {
  4. elements = (T[]) new Object[size];
  5. }
  6. public void set(int index, T element) {
  7. elements[index] = element;
  8. }
  9. public T get(int index) {
  10. return elements[index];
  11. }
  12. public static void main(String[] args) {
  13. MyList<Integer> intList = new MyList<>(3);
  14. intList.set(0, 1);
  15. intList.set(1, 2);
  16. intList.set(2, 3);
  17. MyList<String> strList = new MyList<>(2);
  18. strList.set(0, "Hello");
  19. strList.set(1, "World");
  20. System.out.println(intList.get(1)); // Output: 2
  21. System.out.println(strList.get(0)); // Output: Hello
  22. }
  23. }

代码说明

在这个示例中,我们定义了一个泛型类 MyList,用于保存元素的列表。T是一个类型参数,在使用时被实际类型替换。在类的内部,我们使用 T[] 声明一个数组来保存元素。在构造函数中,我们使用 new Object[size] 创建一个对象数组,并使用 (T[]) 强制类型转换为 T 类型。在 set 和 get 方法中,我们使用 T 作为参数和返回值类型。

在 main 方法中,我们创建了一个整型列表和一个字符串列表,并分别使用 int 和 String 替换了 T,以便在列表中保存不同类型的元素。通过使用泛型,我们可以创建一个通用的列表类,可以用于保存任何类型的元素。


该分类下的相关小册推荐: