Здравствуйте, nk19, Вы писали:
N>class image_proc: public image[/ccode]
N>и все методы обработки к этом классе
зачем обработчику наследоваться то от image?
схематично так:
1. создай какой-нить интерфейс
public interface IImageProcessor {
SomeResult processImage(Image image);
}
2. Реализуй обработчики
public class FirstVariant implements IImageProcessor {
public SomeResult processImage(Image image) {
// processing
}
}
public class SecondVariant implements IImageProcessor {
public SomeResult processImage(Image image) {
// processing
}
}
etc..
3. Сделай какую-нить фабрику по получению обработчиков и вызывай как нужно
public class SomeFactory {
.....
public static List<IImageProcessor> getAllProcessors() {
List<IImageProcessor> res = new ArrayList<IImageProcessor>();
res.add(new FirstVariant());
res.add(new SeconddVariant());
return res;
}
}
.... SomeClass ... {
... someMethod() {
List<IImageProcessor> list = SomeFactory.getAllProcessors();
list.get(0).processImage(image);
}
}