您可以爲sealed
的類製作partial
類文件嗎?密封部分類
密封部分類
回答
它似乎編譯得很好。
sealed partial class Class1
{
public void MyMethod() { }
}
partial class Class1
{
public void MyMethod2() { }
}
我認爲這個答案更具信息性,因爲類的簽名將在編譯時合併。所以只將一個部分指定爲密封就足夠了。並且要確定班級是否密封,您需要檢查其所有部件。 – Maxim 2017-04-07 19:28:47
是的。密封類僅阻止繼承。部分類不是繼承的;只要您編譯它們就會合併到一個類中。
sealed
關鍵字只是表示該類不能被繼承。它對班級代碼的結構沒有影響。 partial
關鍵字只允許一個類在多個文件中拆分。
在下面的示例中,類A編譯得很好。 B不會編譯,因爲A是密封的,並且不允許繼承。
public sealed partial class A { private int x; }
public sealed partial class A { private int y; }
public class B : A { }
如果在分割文件中,一個類定義被標記爲部分而另一個不是?什麼優先? – 2012-11-06 22:11:24
沒有優先權。你會得到一個編譯器錯誤。 – 2012-11-06 22:15:58
是的,你可以讓這部分密封類。
例如:公開密封部分員工
- 1. 密封的內部類
- 2. 不能在密封的部分類中使用外部類
- 3. 痣:使密封可見的內部類
- 4. 擴展密封類
- 5. Kotlin:Upcast和密封類
- 6. 生成密封類
- 7. 緊密封裝類
- 8. 密封類性能
- 9. 摘要密封類
- 10. 封面屏部分
- 11. 嘲笑密封類與RhinoMocks
- 12. 從密封類繼承
- 13. 密封類仿製藥不相關的內部類
- 14. 密封有許多子類型的類
- 15. 類型,矢量和密封類的Scala
- 16. 密封違規:包oracle.net.ns是密封的
- 17. 在密封類C中訪問內部方法#
- 18. 加密 - 祕密密鑰拆分部分
- 19. 爲什麼StringBuilder類是密封的?
- 20. 擴展方法密封類在C#
- 21. 改變「的ToString」一密封類
- 22. 密封類和對象瀏覽器
- 23. 專業通用密封類型
- 24. 靜態密封類的實現問題
- 25. 無法創建密封類的對象
- 26. 如何延長密封類物業
- 27. 密封抽象類的屬性
- 28. 替換「密封」類的實現
- 29. Scala中的密封特徵類轉換
- 30. 如何擺脫虛擬表?密封類
您試過嗎? – 2010-08-25 19:35:13
打開Visual Studio並嘗試它。 – 2010-08-25 19:37:43
由於沒有類之間的分割成多個文件和繼承之間的聯繫,我的猜測是肯定的,但正如傑伊說的那樣試試 – 2010-08-25 19:38:25