C#中默认访问修饰符 您所在的位置:网站首页 修饰符中最低访问级别为 C#中默认访问修饰符

C#中默认访问修饰符

2024-07-13 04:25| 来源: 网络整理| 查看: 265

如果被问到C#中默认的访问修饰符是什么?你该怎么回答,是不是感觉不太好说!我把资料整理如下, 仅供参考!

首先,必须明确的是C#中的访问修饰符有5中:

public 同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员。 private 只有同一类或结构中的代码可以访问该类型或成员。 protected 只有同一类或结构或者此类的派生类中的代码才可以访问的类型或成员。 internal 同一程序集中的任何代码都可以访问该类型或成员,但其他程序集中的代码不可以。 protected internal 由其声明的程序集或另一个程序集派生的类中任何代码都可访问的类型或成员。  从另一个程序集进行访问必须在类声明中发生,该类声明派生自其中声明受保护的内部元素的类,并且必须通过派生的类类型的实例发生

下面分情况进行叙述:

1.命名空间下元素的默认访问修饰符

命名空间下只能使用两种访问修饰符public和internal。如果没有显示的给这些元素访问修饰符,其修饰符默认为internal。

2.各类型中的成员访问修饰符

类中所有的成员,默认均为private,当然也可以修改成其它的访问修饰符。

接口的成员默认访问修饰符是public,也不可能是其他访问修饰符。

命名空间,枚举类型成员默认public,也不可能是其他访问修饰符。

委托,默认的是internal 。

列表如下:

类型默认访问修饰符该成员允许声明的可访问性enumpublicpublicclassprivate public protected internal protected internal private interfacepublicpublicstructprivate public internal private

其次,需要注意的是:

1)派生类的可访问性不能高于其基类型。换句话说,不能有从内部类 A 派生的公共类 B。如果允许这种情况,将会使 A 成为公共类,因为 A 的所有受保护的成员或内部成员都可以从派生类访问。

2)成员的可访问性决不能高于其包含类型的可访问性。 3)可以使用五种访问类型中的任何一种来声明类成员(包括嵌套的类和结构。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有