2016-12-29 4 views
-1
private final HashMap<String, Class<crawler.jobs.Worker>> availableWorkers = new HashMap<>(); 


availableWorkers.put("locations", LocationWorker.class); 
availableWorkers.put("events", EventWorker.class); 

Class<crawler.jobs.Worker> workerClass = availableWorkers.get(queue); 

LocationWorkerとEventWorker私はハッシュマップ内のワーカークラスを格納したいワーカーはサブクラス

を実装の両方でのHashMap <文字列、スーパークラス>内のJavaクラスのオブジェクトを格納します。しかし、このアプローチはうまくいきません。助言がありますか?

ありがとうございました。

+0

"うまくいかない"ことについて詳しく説明できますか? – whrrgarbl

答えて

1

代わりに、Map宣言と出ているものの両方で、Class<? extends crawler.jobs.Worker>を試してみてください。プログラム全体には、Class<crawler.jobs.Worker>と一致する可能性のあるオブジェクトが1つしかなく、crawler.jobs.Worker.classです。

関連する問題