2012-02-15 103 views
3

可能重複:
Is using 「base」 bad practice even though it might be good for readability?我應該使用「base」嗎?訪問繼承時前綴屬性

我有一個基類有點像這樣:

internal abstract class ResultRow : IResultRow 
{ 
    protected InspectionDto InspectionDto { get; private set; } 

    public ResultRow(InspectionDto inspectionDto) 
    { 
     InspectionDto = inspectionDto; 
    } 
} 

和一批類繼承ResultRow,看起來有點像這樣:

internal class RadioRow : ResultRow 
{ 
    public RadioRow(InspectionDto inspectionDto) : 
       base(inspectionDto) {} 
} 

當提到在繼承類的InspectionDto屬性,它應該與base.前綴,即base.InspectionDto?在這種情況下,我使用構造函數注入來捕獲僅用於ResultRow的子類的公共屬性,它不是虛擬的,因此不會被覆蓋。使用前綴base.可以明確定義屬性的位置,但這不是我通常會做的事情。我最近見過它,並想知道它被認爲是一種好的或不好的做法,爲什麼。

回答

0

這完全是你的呼叫。如果你認爲它使代碼更具可讀性,那就去做吧!

1

實際上並不重要,但無論您選擇何種方式並堅持不懈。這是一種模式(不是約定),將來會幫助你和其他人。

個人而言,我更喜歡使用base。此外,StyleCop推薦它。