Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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泛型类型转换难题_Java_Generics_Guava - Fatal编程技术网

Java泛型类型转换难题

Java泛型类型转换难题,java,generics,guava,Java,Generics,Guava,我试图使用Google的Guava ImmutableSet类创建一组具有类时间属性(java.util.Date和org.joda.time.DateTime)的不可变类 private static final ImmutableSet>>>到ImmutableSet timeLikeObjects=ImmutableSet.of(Date.class,DateTime.class); 但是,我显然没有对TimeLikeObject类型进行一般性描述 我从未在泛型描述中遇到过符号,而且它似

我试图使用Google的Guava ImmutableSet类创建一组具有类时间属性(java.util.Date和org.joda.time.DateTime)的不可变类

private static final ImmutableSet>>>到ImmutableSet timeLikeObjects=ImmutableSet.of(Date.class,DateTime.class);
但是,我显然没有对TimeLikeObject类型进行一般性描述

我从未在泛型描述中遇到过符号,而且它似乎不是有效的语法


有没有一种方法可以在Java泛型中指定我刚刚缺少的多重继承?

基本上,编译器正试图为您提供智能。它正在为您计算一些界限,并尝试将它们用于的
返回类型

幸运的是,您可以通过显式的方式修复它:

private static final ImmutableSet<Class<?>> timeLikeObjects =
    ImmutableSet.<Class<?>>of(Date.class, DateTime.class);

这意味着您只能为实现
Serializable
compariable
T
指定类型,这是一个非常有启发性的回答。你很抱歉,这个解决方案非常有效。谢谢!:)
Type mismatch: cannot convert from ImmutableSet<Class<? extends Object&Serializable&Comparable<? extends Comparable<?>>>> to ImmutableSet<Class<?>>
private static final ImmutableSet<?> timeLikeObjects = ImmutableSet.of(Date.class, DateTime.class);
private static final ImmutableSet<Class<?>> timeLikeObjects =
    ImmutableSet.<Class<?>>of(Date.class, DateTime.class);
public class Foo<T extends Serializable & Comparable<T>>