【问题标题】:Access Level Modifiers versus Assembly Load in C#C# 中的访问级别修饰符与程序集加载
【发布时间】:2015-08-23 03:16:35
【问题描述】:

默认情况下,程序集中的类(在我的例子中是 DelegatesSampleApplication)是内部的。因此,除非将它们声明为该特定程序集的朋友程序集,否则外部程序集应该无法访问它们? 现在在另一个对我来说绝对是不同程序集的程序中(在我的情况下是 ReflectionSampleApplication),我尝试通过反射 Assembly.LoadFrom 加载该程序集。我现在能够访问该程序集的所谓“内部”类中的类型对象。 这是预期的行为吗?我错过了什么吗?

【问题讨论】:

    标签: c# .net .net-assembly


    【解决方案1】:

    我现在可以访问该程序集的所谓“内部”类中的类型对象。这是预期的行为吗?

    是的,这是意料之中的。

    我错过了什么吗?

    访问修饰符是关于控制“正常”编译代码中的访问。他们从来没有打算限制反射。它们与任何方式的安全或保密无关,它们可以帮助组织您的代码。

    【讨论】:

    • 太棒了。我学到了一些新东西。非常感谢您的及时回复和洞察力。
    猜你喜欢
    • 1970-01-01
    • 2012-05-26
    • 2015-02-11
    • 2015-04-11
    • 2011-04-21
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    相关资源
    最近更新 更多