Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception { Job job = ctx.getBean(bundle.getJobDetail().getJobClass()); }
上記のコードは型キャストなしでは機能しません.getBean への入力型が Class < T > で戻り型が T の場合に型キャストが必要な理由
JVMは、実行時までBeanのタイプが何であるかをコードからおそらく認識できないため、それをコンパイルする方法はありません。ここでダウンキャストするか、getJobClass()メソッドのシグネチャを変更する必要があります(を返すためClass<? extends Job>)。
getJobClass()
Class<? extends Job>