zoukankan      html  css  js  c++  java
  • 访问修饰符(默认是什么)

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

    public: 同一程序集的其他任何代码或应用改程序集的其他程序集都可以访问该类型或成员。

    Internal:同一程序集中的任何代码都可以访问该类型或成员,但其他程序集不可以访问

    C#中类默认访问级别:internal

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

    剩下的修饰符主要是正对继承这个语言特性的,拥有继承的类型有两个类(class和接口(interface)。public。internal同样可以用于类型成员。

    private:同一类和结构的代码可以访问该类型和成员。

    protected:同一类和派生(继承特性)类中的代码可以访问该类型和成员。

    Protected internal:统一程序集中的任何代码或其他程序集中的任何派生类都可以访问该类型的成员

    3.MSDN提示

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

    2.成员的访问性,不能高于其包含类型的可访问性。

    3.可以使用五种访问类型中的类型中的任何一种来声明类成员(包括嵌套的类或结构)。

    接口(interface)

    接口成员访问修饰符默认为public,且不能显示使用访问修饰符。

    类(class)

    析构函数默认为public访问修饰符

    析构函数不能显示是使用访问修饰符,默认为private访问修饰符。

    类的成员默认的修饰符为private;

    枚举(enum)

    枚举类型成员默认为public访问修饰符,且不能显示使用修饰符。

    结构(struct)

    结构成员默认为private修饰符。

    结构成员无法声明为protected成员,因为结构不支持继承。

    嵌套类型

    嵌套类型的默认访问修饰符为private。和类,结构的成员默认访问类型一致。

    属于 默认的成员可访问性 该成员允许的声明的可访问性
    enum public
    class private

    publicprotectedinternalprivateprotected internal

    interface public
    struct private

    publicinternalprivate

  • 相关阅读:
    iOS 将对象的属性和属性值拆分成key、value,通过字符串key来获取该属性的值
    [IOI2005] Riv 河流
    [洛谷P4549] [模板] 裴蜀定理
    [NOIp2013] 货车运输
    [NOIp2015] 运输计划
    18.10.01模拟赛总结
    [洛谷P3369] 普通平衡树 Treap & Splay
    [NOIp2016] 组合数问题
    [洛谷P4777] [模板] 扩展中国剩余定理
    [洛谷P3384] [模板] 树链剖分
  • 原文地址:https://www.cnblogs.com/ljknlb/p/7398917.html
Copyright © 2011-2022 走看看