Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.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_Collections_Casting_Compilation_Type Parameter - Fatal编程技术网

Java 类类型转换编译错误

Java 类类型转换编译错误,java,collections,casting,compilation,type-parameter,Java,Collections,Casting,Compilation,Type Parameter,我有一个代码,有趣的是Intellij在我尝试运行main时在make进程(运行javac,而不是jit)中抱怨: public class Foo { public static void main(String[] args) { RestTemplate restTemplate = new RestTemplate(); String restEndPointUrl = ""; Integer userId = 0;

我有一个代码,有趣的是Intellij在我尝试运行main时在make进程(运行javac,而不是jit)中抱怨:

public class Foo {


      public static void main(String[] args) {
         RestTemplate restTemplate = new RestTemplate();
         String restEndPointUrl = "";
         Integer userId = 0;

         ResponseEntity<? extends ArrayList<Foo>> responseEntity =
            restTemplate.getForEntity(restEndPointUrl, (Class<? extends ArrayList<Foo>>) ArrayList.class, userId);
      }
   }
java版本:1.7.0_60 事实上,我想问的不是intellij,而是java编译。有人能解释清楚这背后的规则吗

代码取自

我也看到了答案,但它并没有告诉我泛型和类型转换工作背后的逻辑


此外,我应该(或者可以)简单地替换
?扩展ArrayList
?super ArrayList
喜欢使用
ArrayList
的表达式,同时尝试解决java认证考试中很可能存在的此类问题?当然,学习“为什么”将有助于我学习我应该为他们采取的方法。

@realpoinsist抱歉,问题已编辑。
restemplate.getForEntity(restendopURL,new ArrayLisr().getClass,userId)
Error:(77, 94) java: inconvertible types
  required: java.lang.Class<? extends java.util.ArrayList<Foo>>
  found:    java.lang.Class<java.util.ArrayList>