getBean(Class <t> arg0)在没有类型转换</t>的情况下无效

时间:2012-12-08 02:07:53

标签: java spring

protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception 
{
   Job job =  ctx.getBean(bundle.getJobDetail().getJobClass());
}

上面的代码不能在没有类型转换的情况下工作。当getBean的输入类型为Class&lt;时,需要使用类型转换。 T>并且返回类型是T

1 个答案:

答案 0 :(得分:1)

在运行时,JVM可能无法从您的代码中判断出bean的类型是什么,因此无法编译它。您必须在此处向下转发,或更改getJobClass()方法的签名(以返回Class<? extends Job>)。