有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

允许java将整数分配给对象,但不允许将整数数组分配给对象数组?

我正在阅读如何将子类对象分配给父类容器。下面列出了3种情况。用于集合、数组和普通对象。我对这三种情况感到困惑,即如何&;为什么这三种语言在Java中的处理方式不同。下面的场景有简单的解释吗?它们似乎是非常基本的java概念,不知道为什么让我困惑

  1. 这会导致编译时错误

    List<Object> objectList = new ArrayList<Integer>();//compile time error
    
  2. 但是,这是允许的

    Object object = new Integer(9);
    object = 1.2;// no run time error
    
  3. 但这不是吗?(虽然从技术上讲,编译器允许,但我们得到了一个运行时错误)

    Object objectArr[] = new Integer[1];
    objectArr[0] = 1.2;// run time error (Exception in thread "main" java.lang.ArrayStoreException: java.lang.Double)
    

共 (0) 个答案