Java泛型在运行时异常处理实例

原创 朴灿烈づ我的快乐病毒、 2024-10-11 05:09 114阅读 0赞

在Java中,泛型用于创建可以接受多种类型对象的容器。然而,在运行时进行泛型类型的异常处理可能涉及到一些特殊的处理方式。

以下是一个简单的泛型类MyList<T>和其运行时异常处理的例子:

  1. import java.util.ArrayList;
  2. import java.util.List;
  3. // 泛型列表
  4. public class MyList<T> {
  5. private List<T> items = new ArrayList<>();
  6. // 添加元素到列表
  7. public void addItem(T item) throws IllegalArgumentException {
  8. if (item == null) {
  9. throw new IllegalArgumentException("Item cannot be null.");
  10. }
  11. items.add(item);
  12. }
  13. // 获取列表中的元素
  14. public T getItem(int index) {
  15. return items.get(index);
  16. }
  17. }
  18. // 测试代码,抛出异常的场景
  19. public class Main {
  20. public static void main(String[] args) {
  21. try {
  22. MyList<String> list = new MyList<>();
  23. list.addItem("Item1");
  24. list.addItem(null); // 异常:null值无法添加到非空列表
  25. // 获取已添加元素,这里不会抛异常
  26. String item2 = list.getItem(1);
  27. System.out.println(item2); // 输出 "Item1"
  28. } catch (IllegalArgumentException e) {
  29. System.err.println("Caught an IllegalArgumentException: " + e.getMessage());
  30. }
  31. }
  32. }

在这个例子中,MyList<T>在运行时会根据添加的元素类型进行动态调整。如果尝试将null值添加到非空列表中,会抛出一个IllegalArgumentException

在异常处理部分,我们捕获了可能抛出的IllegalArgumentException并打印其详细信息。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,114人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java编译异常案例

    Java泛型(Generics)是一种支持泛型编程的工具,它允许在编译时检查类型安全,从而避免在运行时出现类型转换异常。然而,即使使用了泛型,有时也会出现编译时异常。以下是一些