【问题标题】:What does assembly include when using internal as access modifier?使用 internal 作为访问修饰符时,程序集包括什么?
【发布时间】:2016-07-01 07:09:31
【问题描述】:

内部类型或成员只能在同一个文件中访问 组装,

恐怕我不知道汇编在 C# 中的确切含义。

在将成员定义为内部时,您能解释一下它的定义吗?

【问题讨论】:

标签: c# encapsulation


【解决方案1】:

解决方案(.sln 文件)中的每个项目(.csproj 文件)都将生成一个程序集。 (每个 .exe 文件或 .dll 文件都被视为一个程序集)

当成员为internal 时,对于同一项目中的所有其他类,它被视为public,但对于项目外的所有类,它被视为private

【讨论】:

  • 什么情况下需要在其他程序中使用public member?
  • @MohamedAhmed 当您希望其他项目能够调用您的代码时。例如,您正在制作一个供其他人使用的 DLL,人们可以调用的所有函数都需要公开。
【解决方案2】:

程序集等于创建该程序集的项目中包含的所有编译单元(文件)生成的 .DLL 或 .EXE。

因此,当一个类或类成员被标记为 internal 时,这意味着它只能由包含在该程序集中的代码访问。

【讨论】:

猜你喜欢
  • 2011-04-12
  • 1970-01-01
  • 2017-06-04
  • 1970-01-01
  • 1970-01-01
  • 2016-07-18
  • 1970-01-01
  • 2017-01-22
  • 2013-12-14
相关资源
最近更新 更多