Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 符合.implements的数组_Java_Arrays_Generics_Interface - Fatal编程技术网

Java 符合.implements的数组

Java 符合.implements的数组,java,arrays,generics,interface,Java,Arrays,Generics,Interface,所以我要解决这个问题。我必须创造第一。一个名为Printable的接口,它有一个put()方法,该方法将接受实现可比较的对象完成 interface Printable{ <T extends Comparable<T>> void put(); } private static <T extends Printable> void print(T[] inArray){ for(T element: inArray){

所以我要解决这个问题。我必须创造第一。一个名为Printable的接口,它有一个
put()
方法,该方法将接受实现可比较的对象完成

interface Printable{
   <T extends Comparable<T>> void put();
}
    private static <T extends Printable> void print(T[] inArray){
        for(T element: inArray){
           element.put();
        }
    }
现在,为了测试代码,我创建了第一个类型点数组,并使用代码
print(theArray)
,它工作得很好。第二件事是创建一个时间数组,完成效果很好。但最后一个问题是创建一个混合的点和时间数组。这是我的问题,当我创建这样的数组时:

Object[] mixed = {new Point(x,y), new Point(t,s), new Time(i,u)...};
使用代码
打印后(混合)我得到一个编译错误,我知道为什么。。。因为对象不扩展可打印!这是我在
print()
方法中定义的。。所以我的问题是,如何创建一个数组,在这里使用
print()
方法?

可以

Printable[] mixed = {new Point(x,y), new Point(t,s), new Time(i,u)...};
工作

编辑1:

(暗示,我想是的)

编辑2:

(提问者向我保证它是有效的)

编辑3:

(明星队长罗斯科的命令证实了它的工作原理)

编辑4:

(罗慕兰人确认它有效)

编辑5:

(这就是它工作的原因)

编辑6:

(有趣的是,代码看起来有多傻,但却能完成它。)

确实如此

Printable[] mixed = {new Point(x,y), new Point(t,s), new Time(i,u)...};
工作

编辑1:

(暗示,我想是的)

编辑2:

(提问者向我保证它是有效的)

编辑3:

(明星队长罗斯科的命令证实了它的工作原理)

编辑4:

(罗慕兰人确认它有效)

编辑5:

(这就是它工作的原因)

编辑6:

(有趣的是,代码看起来有多傻,但它却完成了。)