已有57人关注
请教public、private、static等访问级别和使用区别?
发表在C#图书答疑 2022-07-14 《C#从入门到精通(第4版)》第8章 属性和方法
是否精华
版块置顶:

请教一下public、private、static、internal、protected访问级别和使用区别?

分享到:
精彩评论 1
game99258
学分:2266 LV10
2022-07-14
沙发

代码的书写需要一定的规范和结构,按照一定的框架去写的,先说一下编写代码最开始的那句话是什么意思,比如


  public static int[] BubbleSort(int[] list)


  公共的 静态的 返回值类型 函数名(参数类型 参数名)




1,“公共的”说明这个函数可由定义它的类之外的地方访问到、调用到。


2,“静态的”说明这个函数被调用的时候,无需为定义它的类创建一个实际对像。


3,“函数名”是调用这个方法要输入的名称。


4,返回值是调用方法后得到的值,参数则是调用方法需要输入的值。


5,这里,返回值和参数值都是int[]类型,就是“整数数组”类型。


6,返回值可以赋给其他变量,这个变量名字现在我们不知道所以不会有返回值名字。但是参数作为输入,有类型int[]以外还要有个自己的名字,这里就是list,这样我们才好使用它。


    最开始的那个单词public就是访问修饰符,所有类型和类型成员都具有可访问性级别,用来控制是否可以在您程序集的其他代码中或其他程序集中使用它们。 可使用一下访问修饰符指定声明类型或成员时类型或成员的可访问性。c#中的访问修饰符大概分为以下四种。





   public



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



   private



   只有同一类或结构中的代码可以访问该类型或成员。



   protected



   只有同一类或结构或者此类的派生类中的代码才可以访问的类型或成员。



   internal



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






举个栗子:



比如说:一个人A为父类,他的儿子B,妻子C,私生子D(注:D不在他家里)

如果我们给A的事情增加修饰符:

public事件,地球人都知道,全公开

protected事件,A,B,D知道(A和他的所有儿子知道,妻子C不知道)

private事件,只有A知道(隐私?心事?)

internal事件,A,B,C知道(A家里人都知道,私生子D不知道)


还有需要注意的是:


1,命名空间上不允许使用访问修饰符。命名空间没有访问限制。 

2,一个成员或类型只能有一个访问修饰符,使用 protectedinternal 组合时除外

3,assembly中的class默认访问修饰符为internal

4,类中的字段默认为private

5,类中的方法默认为private,包括构造函数


首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照