标题可能令人困惑......这是代码:
这是类生成具有不同类型的每个不同对象。例如:BookingReferenceExtractor
AircraftExtractor
我在这里的方法是通用的...取一个字符串并主观地返回不同的对象...
public class ExtractorFactory {
private static ExtractorFactory extractorFactory;
public ExtractorFactory(){
}
public Extractor extractorFor(String extractorType) {
if(extractorType.equals("booking_reference")){
return new BookingReferenceExtractor();
}
else if("itinerary".equals(extractorType)){
return new ItineraryExtractor();
}
else if("passengers".equals(extractorType))
{
return new PassengersExtractor();
}
else if("aircraft".equals(extractorType))
{
return new AircraftExtractor();
}
return null;
}
}
我现在需要的是使类成为通用的......例如,当我将一个param传递给构造函数时,它会主观地生成对象...而无需访问其他方法.. 类似的东西:
ExtractorFactory BookingReferenceExtractor_object = new ExtractorFactory("booking_reference");
ExtractorFactory ItineraryExtractor_object = new ExtractorFactory("itinerary");
..
..
基本上,需要与类承包商做一些事情,使其成为通用的,传入任何字符串,它可以直接生成对应的对象,而无需调用其他方法。
我一直在读这个啧啧:http://math.hws.edu/javanotes/c10/s5.html我知道应该这样做:
class Queue<T> {
private LinkedList<T> items = new LinkedList<T>();
public void enqueue(T item) {
items.addLast(item);
}
public T dequeue() {
return items.removeFirst();
}
public boolean isEmpty() {
return (items.size() == 0);
}
}
...但不确定如何转换为通用类...任何建议?感谢。