【问题标题】:Array of inner class objects inside a teplated classteplate 类中的内部类对象数组
【发布时间】:2020-09-24 03:56:49
【问题描述】:

根据我在这里读到的StackOverFlow array from a class...,我预计以下代码可以编译。我得到一个错误,“ 预期”。我使用 Array.newInstance 得到相同的结果。我做错了什么?

import java.lang.reflect.Array;
public class Outer<E> {
    private Inner[] array;
    
    public Outer() {
        @SuppressWarnings("unchecked")
        array = (Inner[])new Outer<?>.Inner[10];
        //array = (Inner[])Array.newInstance(Inner.class, 10);
    }
    
    public class Inner {
        E data;
    }
}

【问题讨论】:

    标签: java arrays compiler-errors inner-classes


    【解决方案1】:
    import java.lang.reflect.Array;
    class Outer<E> {
        private Inner[] array;
        @SuppressWarnings("unchecked")
        public Outer() {
            array = (Inner[])new Outer<?>.Inner[10];
            //array = (Inner[])Array.newInstance(Inner.class, 10);
        }
        
        
        public class Inner {
            E data;
        }
    }
    

    在构造函数之外禁止警告

    【讨论】:

    • 就是这样!谢谢!
    猜你喜欢
    • 1970-01-01
    • 2018-02-06
    • 2010-12-21
    • 2011-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    相关资源
    最近更新 更多