2012-07-27 45 views
2

假設我有一個名爲「XMLControl」的接口,並且我需要實現它的每個類也實現ISerializable。有沒有OO方法可以強制這個?如何讓一個類只有在序列化時才能實現接口?

也可以將XMLControl作爲抽象類使用,儘管稍微不太好。什麼是最好的方法?

我想將一個靜態方法XMLControl像這樣的:

static void LoadFromXML(SerializableClass);

而是尋找更好的想法。

謝謝。

回答

11

你可以使XMLControl接口實現ISerializable接口:

public interface IXmlControl: ISerializable 
{ 
    ... 
} 

你正迫使IXmlControl接口的所有實現這種方式,也能實現ISerializable

另請注意,標準.NET命名約定規定接口名稱應以大寫I開頭。所以這個接口最好叫做IXmlControl

+0

謝謝,我今天學到了兩件新東西:) – David 2012-07-27 10:18:24

+0

雖然我建議'IXMLControl'由於推薦的命名約定。 – 2012-07-27 10:18:29

+0

就我個人而言,我會去'IXmlControl'。 – 2012-07-27 10:20:57

相關問題