Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.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 返回类型为的弹簧bean_Java_Spring_Generics - Fatal编程技术网

Java 返回类型为的弹簧bean

Java 返回类型为的弹簧bean,java,spring,generics,Java,Spring,Generics,这感觉像是一个愚蠢的问题,甚至可能是一个重复的问题(我已经找过了,但找不到) 但我究竟如何(如果可能的话)在类型安全性方面做到这一点呢 ArrayList<String> myList = applicationContext.getBean( ArrayList<String>.class ); ArrayList myList=applicationContext.getBean(ArrayList.class); 遗憾的是,你没有。这需要在运行时了解参数化类型,只

这感觉像是一个愚蠢的问题,甚至可能是一个重复的问题(我已经找过了,但找不到)

但我究竟如何(如果可能的话)在类型安全性方面做到这一点呢

ArrayList<String> myList = applicationContext.getBean( ArrayList<String>.class );
ArrayList myList=applicationContext.getBean(ArrayList.class);

遗憾的是,你没有。这需要在运行时了解参数化类型
,只有编译器知道这一点。

Java通过类型擦除实现泛型。这意味着泛型类型在编译时可用,但在运行时是对象。所以不,没有铸造就无法让它工作。

这太糟糕了,谢谢你的回答-我想我知道,但我一直在想:(这在Spring 4.x之后是可能的。