请问一下 参数化 vararg 类型T的堆可能已受污染 是什么意思,该如何修改

请问一下 参数化 vararg 类型T的堆可能已受污染 是什么意思,该如何修改

public class GenericsDemo20{
    public static void main(String args[]) {
        Integer i[] = fun1(1,2,3,4,5,6);
        fun2(i);
    }
    public static<T> T[] fun1(T...arg){
        return arg;
    }
    public static<T> void fun2(T arg[]){
        System.out.println("接收泛型数据");
        for(T t:arg) {
            System.out.println(t + "、");
        }
    }
}

错误类型

D:\testjava>javac GenericsDemo20.java
注: GenericsDemo20.java使用了未经检查或不安全的操作。
注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

D:\testjava>javac  -Xlint:unchecked GenericsDemo20.java
GenericsDemo20.java:6: 警告: [unchecked] 参数化 vararg 类型T的堆可能已受污染
        public static<T> T[] fun1(T...arg){
                                      ^
  其中, T是类型变量:
    T扩展已在方法 <T>fun1(T...)中声明的Object
1 个警告

D:\testjava>

http://softlab.sdut.edu.cn/blog/subaochen/2017/04/safevarargs%E7%9A%84%E7%94%A8%E6%B3%95/