我们为什么要施放到同一类型?

时间:2018-04-29 10:03:00

标签: java arrays casting

任何人都可以解释为什么我会遇到不兼容的类型错误 如果Object[]已经是对象数组(ref[0]

,则转换为class [Ljava.lang.Object;
public class Test {
    public static void main(String args[]) {
        Object[] ref = new Object[1];
        Object[] x = new Object[]{1};
        while (true) {
            ref[0] = new Object[]{ref};
            System.out.println(ref[0].getClass()); //class [Ljava.lang.Object;
            ref = ref[0]; // incompatible type error
        }

    }
}

1 个答案:

答案 0 :(得分:3)

在编译阶段,... @Styles.Render("~/bundles/css") ... 的数据类型为ref[0]Object的数据类型为ref

Object[]Object的类型不同。