访问修饰符的编译

时间:2013-07-09 16:30:07

标签: c# access-modifiers

私有或受保护和公共类成员之间的编译代码有何不同?在运行期间是否可以检查是否可以访问该成员?我在C#的背景下问这些问题。

1 个答案:

答案 0 :(得分:2)

编译到IL后,信息将被保留。编译模块(DLL)可以被其他代码引用,然后私有/公共/受保护就可以了。

从IL编译到本机代码后,没有区别。

  

运行期间是否可以检查是否可以访问该成员?

我不完全确定,但我认为这是Type-loader的一部分。 (没有反射)访问它不应该知道的私有变量的代码必须在某处破坏规则。