gpt4 book ai didi

.net - 私有(private)类是否在编译时被密封?

转载 作者:行者123 更新时间:2023-12-03 15:58:37 29 4
gpt4 key购买 nike

假设如下:我们有类 B,它是一个嵌套在类 A 中的私有(private)类。没有任何类继承自类 B。问题是:编译器会自动将 B 类标记为 Sealed 吗? (在 VB 中不可继承)。编译器是否有充分的理由不将 B 类标记为密封?

我的思路是这样的:既然B类嵌套在A类内部并且是私有(private)的,并且没有其他类继承自B类,那么封起来应该是安全的,因为它不能在A类之外继承(不是即使是 A) 的子类。

Class A
Private Class B
End Class
End Class

最佳答案

编译器不会自动将此类型标记为密封。

在这个非常具体的场景中,将类(class)保持为未密封状态并没有真正的值(value)。但是,确定您处于这种情况并不总是那么容易。您必须考虑以下几点

  • 类型为私有(private)
  • 必须考虑部分类的存在
  • 其他私有(private)嵌套类型可以继承。

  • 这些不是不可能计算出来的,但也不是微不足道的。要求用户自己密封类型要便宜得多

    关于.net - 私有(private)类是否在编译时被密封?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2518837/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com