【发布时间】:2013-10-29 16:31:35
【问题描述】:
我们可以使用反射来获取或设置 C# 类中任何private 成员的值。 (使用BindingFlags.NonPublic等)
如果是这样,private 成员怎么真的是私密的?我们如何确保有意存储在private 字段中的内容在真正意义上保持私有?
【问题讨论】:
-
你无法真正阻止这一点 - 反射是你的类实现的后门。
-
实际上,你不能;实现
privateinternal等是关于在设计中指定意图以及如何使用组件。 -
这个问题被问了很多次。这个答案很好:stackoverflow.com/q/2084353/694852。而这个被大大地赞成:stackoverflow.com/q/16942114/694852.
标签: c# .net reflection access-modifiers