问答详情
源自:4-3 Spring Bean装配之Autowired注解说明-2

这里使用map可以注入,但是使用hashmap就会报错,为什么?

这里使用map可以注入,但是使用hashmap就会报错,为什么?

提问者:慕粉2041042872 2017-08-02 11:07

个回答

  • 慕码人7943638
    2018-02-06 18:02:35

    我这样猜想,大概是 因为  Spring 源码中,@Autowired 注解  解析的时候, 有条件的是封装成   Map 类型,  如果突然用  HashMap  类型进行接收值,大概是会产生 【向下转型的概念】,所以才会报错。   《java机制中,向上转型是自动的, 向下转型  需要强制转换。。。。。》   用了 HashMap 类型来接收值,没有被强制转换,应该是会报错的

  • wcz0311
    2017-08-09 21:56:19

    可能是因为Spring中的Map注入不是HashMap实现方式吧。。。