OOP - 如何要求派生 类 将值设置为基本属性?

OOP - How to demand derived classes to set a value to base attribute?

我的程序的输出是文件中的 table。

有些用户喜欢输出为 Excel 文件,其他用户喜欢 CSV,等等。
因此,我有一个 abstarct class Document 和 2 个派生的 classes:
ExcelDocumentCsvDocument

输出结果之间的分隔符各不相同class:
在 CSV 文件中,分隔符是 ,,在 Excel 中,分隔符是 /t

如何强制派生的 classes 将值设置为抽象 Document class 的 delimiter 属性?

使用摘要属性:

public abstract char Delimiter { get; }

然后在你的派生中 class:

public override char Delimiter
{
    get { return '\t'; }
}