c#基础概念之internal 修饰符有什么作用

来源:互联网 发布:淘宝客通用计划有用吗 编辑:程序博客网 时间:2024/04/28 21:30

#基础概念之internal 修饰符有什么作用

Posted on 2009-01-16 14:14 Fred du 阅读(2016) 评论(1)  编辑 收藏 

c#基础概念之internal 修饰符有什么作用


internal 修饰符可以用于类型或成员,使用该修饰符声明的类型或成员只能在同一程集内访问

接口的成员不能使用 internal 修饰符

值得注意的是,如果为 internal 成员加上了 protected 修饰符,这时的访问级别为 internal 或 protected。只是看字面意思容易弄错,许多人认为 internal protected 应该是"只有同一个程序集中的子类可以访问",但其实它表示"同一个程序集中的所有类,以及所有程序集中的子类都可以访问"

示例

Example05Lib 项目的 Class1 

using System;
using System.Collections.Generic;
using System.Text;
 
namespace Example05Lib
{
    public class Class1
    {
        internal String strInternal = null;
        public String strPublic;
        internal protected String strInternalProtected = null;
    }
}
结果 
Example05Lib 项目的 Class2 类可以访问到 Class1 的 strInternal 成员,当然也可以访问到 strInternalProtected 成员,因为他们在同一个程序集里
Image14.png
Example05 项目里的 Class3 类无法访问到 Class1 的 strInternal 成员,因为它们不在同一个程序集里。但却可以访问到 strInternalProtected 成员,因为 Class3 是 Class1 的继承类
Image13.png
Example05 项目的 Program 类既无??ǚ梦实?Class1 的 strInternal 成员,也无法访问到 strInternalProtected 成员,因为它们既不在同一个程序集里也不存在继承关系
Image03_thumb4.png
绿色通道: 好文要顶 关注我 收藏该文与我联系 
Fred du
关注 - 0
粉丝 - 0
+加关注
0
0
(请您对文章做出评价)
« 博主上一篇:[经典]cmd快速将N个txt内容合并到1个txt中!
» 博主下一篇:普鲁斯特问卷
原创粉丝点击