如果您有任何想法,我想问一下,让我的Java项目的架构变得更干净。
abstract class rdfDataChecker {
List<T> data;
// all abstract methods to check data... more than 20 methods. They all use the list "data".
}
// the idea of this interface is, that all the data loaders can just use feedable.feed(List<T>). (we inject this dataChecker to the data Loader).
interface Feedable {
void feed(List<T>);
}
//implementations in different java frameworks.
class specificRdfDataChecker extends rdfDataChecker implements Feedable{
// implement all the methods.
}
class DataLoader {
private Feedable feedable;
public DataLoader(Feedable feedable) {
this.feedable = feedable;
}
}
提前感谢您的建议。
发布于 2016-01-19 09:34:00
这种模式是一种常见且可接受的模式--甚至在Java库中也使用过。参见ArrayList,extends
AbstractList和implements
列表。
发布于 2016-01-19 22:27:56
您可以尝试如下:
https://stackoverflow.com/questions/34872913
复制相似问题