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

上記のコードは型キャストなしでは機能しません.getBean への入力型が Class < T > で戻り型が T の場合に型キャストが必要な理由

4

1 に答える 1

1

JVMは、実行時までBeanのタイプが何であるかをコードからおそらく認識できないため、それをコンパイルする方法はありません。ここでダウンキャストするか、getJobClass()メソッドのシグネチャを変更する必要があります(を返すためClass<? extends Job>)。

于 2012-12-08T09:58:27.833 に答える