public, protected, private, internal, protected internal简析 |
您所在的位置:网站首页 › internal权限 › public, protected, private, internal, protected internal简析 |
public是可访问权限最高的,比如姓名,每个人都可以知道别人的姓名,这个不是什么秘密 protected的访问权限要低些,只有子类才可以访问得到父类的protected属性。就好像老子的财产只有儿子才能继承。如果别人想要问:hey, son.财产=多少?儿子会拒绝,因为son的财产是从father那里继承来的,不可外泄。 private的访问权限最低了,只有本人才能知道。比如某人的银行卡密码。只有他自己类内部的方法才能访问到这个属性。 internal的访问权限仅限于同一程序集内部。什么叫同一程序集呢?也就是在同一个类库(dll)里,类的internal属性跟public属性一样,谁都可以访问。 protected internal的访问权限是protected与internal的并集。意思是说,对于隶属于同一个程序集的其他类,可以像internal属性一样访问他,对于不同程序集的类,只有继承了我这个类的类才能访问到这个属性。注:protected 与 internal的顺序不重要。 举个栗子吧: 程序集1: public class A { protected internal string x="X"; } public class D { public string func() { A a = new A(); return a.x;//OK,可以正确访问到 } } 程序集2:引用程序集1的dll public class B:A { public string func() { return x;//OK,可以正确访问到 }} public class C { public string func() { A a= new A(); //return a.x;//No,不可以访问到 }} |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |