我想创造新的推理器(HermiT)。
以下两种方法有什么区别: -
1)使用工厂:[org.semanticweb.HermiT.ReasonerFactory]
ReasonerFactory factory = new ReasonerFactory();
OWLReasoner reasoner = factory.createReasoner(ontology, configuration);
2)使用构造函数:[org.semanticweb.HermiT.Reasoner]
Reasoner reasoner = new Reasoner(configuration, ontology);
答案 0 :(得分:1)
工厂可能会执行更多初始化步骤 - 取决于推理器。
在HermiT的案例中没有区别。但是,构造函数可能会在不同版本之间更改;工厂是一个owlapi界面,因此如果您转移到另一个HermiT版本,它将为您提供无缝界面。