我有这样的结构:
public class Record{}
public class ParsedRecord extends Record {}
public class RecordsList extends ParsedRecord {}
public abstract class Processor<T extends Record >{ private BlockingQueue<T> queue;}
public class Dispatcher extends Processor<ParsedRecord> {
List<ParsedRecord> list;
public Dispatcher() {
}
public void process(ParsedRecord record){
//blabla
}
}
我想将Dispatcher类与ParsedRecord或从ParsedRecord类扩展的任何类型的参数一起使用。
可以请一些人帮我了解如何正确更改Dispatcher类定义吗?
最佳答案
就像将类定义更改为:
public class <T extends ParsedRecord> Dispatcher extends AbstractProcessor<T> {
然后:使用该
T
作为列表的类型,或者将process()
赋予的参数。但真正的答案是:研究 concept。不要尝试反复尝试。