[問題] 繼承時的存取限縮

作者: s4300026 (s4300026)   2017-12-02 16:46:57
大家好,小弟有個疑問
在 C++ 中有個繼承限縮的功能
例如:
class D: protected B{}; //把B的所有public變數、方法全部改寫成protected
或者是
class D: public B
{
void method() = delete; //刪除名稱為method方法
};
想詢問C#有沒有類似的語法呢?
作者: testPtt (測試)   2017-12-02 19:16:00
我覺得只能繼承1個應該是沒有必要做這個功能
作者: yeo1987 (Archie)   2017-12-03 23:42:00
不太確定你的需求是否父類的set/get用protected就好了?
作者: lightyen (lightyen)   2017-12-04 00:22:00
property裡面get; private set; ?
作者: CloudyWing (孤單ㄉ翼)   2017-12-04 09:46:00
繼承權限修飾詞只能放寬不能變嚴格的樣子,如果是同組件使用,用internal?
作者: Litfal (Litfal)   2017-12-04 13:04:00
在C#這種需求通常是在包一層或用interface吧
作者: testPtt (測試)   2017-12-04 13:40:00
如果只是要debug就加上[Conditional("DEBUG")]就好
作者: s4300026 (s4300026)   2017-12-09 22:02:00
不懂... 不過算了,我再想想辦法

Links booklink

Contact Us: admin [ a t ] ucptt.com