我有幾個問題決定如何最好地描述C#(.NET 3.5)中的某個數據結構。如何最好地在C#中構造類層次結構以啓用對父類成員的訪問?
我必須創建一個類庫,爲命令行程序的輸入創建一些文本文件。有幾十種文件類型,但其中大多數都具有類似的頁眉,頁腳和其他一些屬性。
因此,一個文件可能是這樣的:
timestamp filename company
....lots of attributes that make up the file body....
footerdetail1 footerdetail2 footerdetail3
現在這些幾十個文件類型的,實際上只有三個獨特的頁眉/頁腳連擊。
所以我想創建包含大部分headerItems和footeritems的父類,然後實現在派生類中的實際文件類型:
class BaseFileType {
public List<HeaderItems>;
public List<BodyItems>;
public List<FooterItems>;
FileType filetype;
String filename;
public BaseFileType1 (FileType filetype,String filename) {
this.filetype = filetype;
this.filename = filename;
// add stuff to the header list
// add stuff to the footer list
}
// some methods to find items in the header/ footer lists
}
class ActualFile1 : BaseFileType {
ActualFile() {
//add stuff to the bodyitems list
}
//some other generic methods
}
的事情是,我想繼承構造器從派生類的基類中,但從我讀過的這個不能完成。這裏最好的策略是什麼?
我已經看到了,我可以從我的派生類的構造函數調用基類的構造像這樣:
actualFile中():基地(父參數)
這甚至去了解我的任務的最佳方式?最後,我只是尋找所有這些文件信息的最佳數據結構,所以我在做這些類時不需要重複自己。
還有什麼別的辦法可以解決人們的問題?有一個單獨的FileFactory,它會吐出包含我需要的結構的類?