Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私有或受保护和公共类成员之间的编译代码有什么区别?在运行时是否有任何检查是否可以访问该成员?我在 C# 的上下文中问这些问题。
编译到 IL 后,信息将被保留。编译后的模块(DLL)可以被其他代码引用,然后私有/公共/受保护确实很重要。
从 IL 编译为本机代码后,没有区别。
在运行时是否有任何检查是否可以访问该成员?
我不完全确定,但我认为这是 Type-loader 的一部分。(没有反射)访问它不应该知道的私有变量的代码必须在某处违反规则。