打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C#中默认访问修饰符
如果被问到C#中默认的访问修饰符是什么?你该怎么回答,是不是感觉不太好说!我把资料整理如下, 仅供参考!
首先,必须明确的是C#中的访问修饰符有5中:
public
同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员。
private
只有同一类或结构中的代码可以访问该类型或成员。
protected
只有同一类或结构或者此类的派生类中的代码才可以访问的类型或成员。
internal
同一程序集中的任何代码都可以访问该类型或成员,但其他程序集中的代码不可以。
protected internal
由其声明的程序集或另一个程序集派生的类中任何代码都可访问的类型或成员。
从另一个程序集进行访问必须在类声明中发生,该类声明派生自其中声明受保护的内部元素的类,并且必须通过派生的类类型的实例发生
下面分情况进行叙述:
1.命名空间下元素的默认访问修饰符
命名空间下只能使用两种访问修饰符public和internal。如果没有显示的给这些元素访问修饰符,其修饰符默认为internal。
2.各类型中的成员访问修饰符
类中所有的成员,默认均为private,当然也可以修改成其它的访问修饰符。
接口的成员默认访问修饰符是public,也不可能是其他访问修饰符。
命名空间,枚举类型成员默认public,也不可能是其他访问修饰符。
委托,默认的是internal 。
列表如下:
类型默认访问修饰符该成员允许声明的可访问性
enumpublicpublic
classprivatepublic
protected
internal
protected internal
private
interfacepublicpublic
structprivatepublic
internal
private
其次,需要注意的是:
1)派生类的可访问性不能高于其基类型。换句话说,不能有从内部类 A 派生的公共类 B。如果允许这种情况,将会使 A 成为公共类,因为 A 的所有受保护的成员或内部成员都可以从派生类访问。
2)成员的可访问性决不能高于其包含类型的可访问性。
3)可以使用五种访问类型中的任何一种来声明类成员(包括嵌套的类和结构。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
c#中public,private,protected,internal的区别
C#中方法、类等的默认访问修饰符
C# 访问修饰符
C# 类访问修饰符
C#修饰符
C++ 继承
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服