荣耀8荣耀8 青春版 区别尊享版和荣耀8 64GB的区别

c#中public,private,protected,internal的区别
我的图书馆
c#中public,private,protected,internal的区别
public & 可以被外部成员调用&
private & 只能在被类的成员调用&&&protected & 只能在被类的成员和该类的子类调用&&
internal & 可以在当前项目调用&&
public: 对任何类和成员都公开, 无限制访问;protected: 仅仅对该类以及该类的派生类公开;private: 仅仅对该类公开;internal: 只能值包含该类的程序集中访问该类;protected internal: 只能在本类,派生类或者包含该类的程序集中访问.
比如说:一个人A为父类,他的儿子B,妻子C,私生子D(注:D不在他家里)
如果我们给A的事情增加修饰符:
public事件,地球人都知道,全公开
protected事件,A,B,D知道(A和他的所有儿子知道,妻子C不知道)
private事件,只有A知道(隐私?心事?)
internal事件,A,B,C知道(A家里人都知道,私生子D不知道)
protected internal事件,A,B,C,D都知道,其它人不知道
貌似protected,internal,protected internal只能修饰嵌套类(nested class),下面代码编译错误:
protected class C &&& { &&&&&&& public int Get C() &&&&&&& { &&&&&&&&&&& return 3; &&&&&&& } &&& }错误信息:Namespace elements cannot be explicitly declared as private, protected, or protected internal
微软官方解释:不嵌套在其他类型中的顶级类型的可访问性只能是 internal 或 public。这些类型的默认可访问性是 internal。
1,命名空间上不允许使用访问修饰符。命名空间没有访问限制。 2,一个成员或类型只能有一个访问修饰符,使用 protectedinternal 组合时除外
1,assembly中的class默认访问修饰符为internal
2,类中的字段默认为private
3,类中的方法默认为private,包括构造函数
原文地址:
TA的最新馆藏1434人阅读
private、protected、public和internal的区别
private是完全私有的,只有在类自己里面可以调用,在类的外部和子类都不能调用,子类也不能继承父类的private的属性和方法。
protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(protected的属性和方法都可以被子类所继承和调用)。
private和protected的共同点:外部都不可以访问。
private和protected的不同点:在同一类中可视为一样,但在继承中就不同了,private在派生类中不可以被访问,而protected可以。
public对任何类和成员都完全公开,无限制访问。
internal同一应用程序集内部(在VS.NET中的一个项目中,这里的项目是指单独的项目,而不是整个解决方案)可以访问。
public和internal的区别:public的成员可以跨程序集,但internal不能,同一程序集中具有相同的效果。
protected internal:只能在同一应用程序集内本类、派生类访问。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:269704次
积分:3308
积分:3308
排名:第9053名
转载:311篇
评论:37条
(3)(1)(1)(2)(6)(2)(2)(10)(13)(1)(6)(2)(1)(1)(6)(14)(41)(5)(5)(2)(5)(6)(14)(9)(4)(9)(5)(13)(1)(7)(6)(16)(17)(47)(8)(6)(8)(15)(2)11512人阅读
msdn的解释如下:internal指的是同一个程序集,内部成员和类型才是可以访问的.内部访问通常用于基于组件的开发,因为它使一组组件能够以私有方式进行合作,而不必向应用程序代码的其余部分公开
一个成员或类型只能有一个访问修饰符,使用 protectedinternal 组合时除外。
命名空间上不允许使用访问修饰符。命名空间没有访问限制。
根据发生成员声明的上下文,只允许某些声明的可访问性。如果在成员声明中未指定访问修饰符,则使用默认的可访问性。
不嵌套在其他类型中的顶级类型的可访问性只能是 internal 或 public。这些类型的默认可访问性是 internal。
嵌套类型是其他类型的成员,它们可以具有下表所示的声明的可访问性。
默认的成员可访问性
该成员允许的声明的可访问性
protected internal
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:241975次
积分:3529
积分:3529
排名:第8253名
原创:96篇
转载:90篇
评论:26条
(1)(1)(2)(1)(3)(3)(4)(2)(2)(1)(1)(2)(2)(3)(1)(1)(5)(9)(1)(2)(2)(6)(1)(1)(1)(2)(1)(1)(2)(2)(6)(1)(1)(1)(3)(1)(1)(1)(1)(1)(2)(3)(3)(4)(6)(5)(4)(14)(15)(8)(17)(10)(2)(3)(4)(3)(1)(1)

我要回帖

更多关于 荣耀8和青春版的区别 的文章

 

随机推荐