中的构造函数定义输入参数首先,我知道无法在Java中的接口中定义构造函数。但不知何故,我遇到了一个需要非常相似的问题。也许有我的情况下,简单的解决方案...需要一种方法来为接口
我有一个接口:
public interface SomeObject {
/**
* Generate a xml representation of the object.
*/
public String generateXMLRepresentation();
}
对象的这个XML,表示将在某个地方,后来保存在它应该有可能建立一个副本使用这个xml表示的对象。我的初衷是定义一个构造函数,它将一个String作为输入,并让每个SomeObject的实现知道如何处理它以及如何构造相应的对象。
我该如何做到这一点?
编辑︰要么我不是很清楚,或者我认为这是错误的方式,但我认为工厂或生成器模式将无法正常工作。我需要更强大的地方,每个人都可以编写一个新的SomeObject实现,并强制实现一个带有xml字符串的构造函数。换句话说,我不知道SomeObject存在多少个或哪些实现存在,而是依赖于每个实现都知道如何从xml表示中构建自己。
你怎么能实现什么? – acdcjunior 2013-04-23 16:25:33
工厂设计模式? – jlordo 2013-04-23 16:27:21
试图通过任何方式强加一个String构造函数似乎是限制性的(Factory和Builder模式是鼓励实现者执行此操作的可能方式)。看起来你所关心的是XML表示可以作为一个String来生成。那么你关心接口的实现是如何构建的呢? – 2013-04-23 16:58:45