中的構造函數定義輸入參數首先,我知道無法在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