internal(C# 参考)
来源:互联网 发布:怎么找淘宝的客服聊天 编辑:程序博客网 时间:2024/05/16 09:37
internal 关键字是类型和类型成员的访问修饰符。只有在同一程序集的文件中,内部类型或成员才是可访问的,如下例所示:
public class BaseClass { // Only accessible within the same assembly internal static int x = 0;}
内部访问通常用于基于组件的开发,因为它使一组组件能够以私有方式进行合作,而不必向应用程序代码的其余部分公开。例如,用于生成图形用户界面的框架可以提供“控件”类和“窗体”类,这些类通过使用具有内部访问能力的成员进行合作。由于这些成员是内部的,它们不向正在使用框架的代码公开。
从定义具有内部访问能力的类型或成员的程序集外部引用该类型或成员是错误的。
尽管不能用 C# 重写 internalvirtual 方法,但可以用某些语言(如使用 Ilasm.exe 的文本 Microsoft 中间语言 (MSIL))重写它。
示例
该示例包含两个文件:Assembly1.cs 和 Assembly2.cs。第一个文件包含内部基类 BaseClass。在第二个文件中,实例化 BaseClass 的尝试将产生错误。
// Assembly1.cs// compile with: /target:libraryinternal class BaseClass { public static int intM = 0;}
// Assembly1_a.cs// compile with: /reference:Assembly1.dllclass TestAccess { static void Main() { BaseClass myBase = new BaseClass(); // CS0122 }}
在此示例中,使用与示例 1 中所用的文件相同的文件,并将 BaseClass 的可访问性级别更改为 public。还将成员 IntM 的可访问性级别更改为 internal。在此例中,您可以实例化类,但不能访问内部成员。
// Assembly2.cs// compile with: /target:librarypublic class BaseClass { internal static int intM = 0;}
// Assembly2_a.cs// compile with: /reference:Assembly1.dllpublic class TestAccess { static void Main() { BaseClass myBase = new BaseClass(); // Ok. BaseClass.intM = 444; // CS0117 }}
- internal(C# 参考)
- internal(C# 参考)
- internal(C# 参考)
- internal(C# 参考)
- internal(C# 参考)
- internal(C# 参考)
- c# internal
- C# internal
- C# Internal
- switch(C# 参考)
- base(C# 参考)
- abstract(C# 参考)
- 接口(C# 参考)
- partial(C# 参考)
- ref(C# 参考)
- sealed(C# 参考)
- virtual(C# 参考)
- const(C# 参考)
- as3给按钮添加事件
- 有了MeeGo,让全新的移动世界开发程序变得更为轻松
- file_operation结构
- 叹息论
- lua_settable
- internal(C# 参考)
- 自定义基于jQuery的客户端表单验证工具
- 喜欢的风格 漂亮的form
- 使用hadoop过程中两次datanode无法启动问题
- 嵌入式开发中如何看Configure文件
- java面向对象思想学习整理
- 二分图
- clean all svn
- TTL电平与CMOS电平的区别 收藏