服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C# - 对C#中public、private、protect的区别说明

对C#中public、private、protect的区别说明

2022-11-14 12:07James-Blackhu C#

这篇文章主要介绍了对C#中public、private、protect的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

访问修饰符都知道是什么,但是在这之前没有深入的去研究和探索,每天都接触的东西应该清楚才可以。

最基础的三个访问修饰符:

public 、private、protect.在搜索过程中又看到有一种和他们放在了一起,那就是internal.接下来就四个访问修饰符做一个简答的总结和介绍。

public公有访问,不受任何限制。

private私有访问,只限于本类成员访问,子类、实例都不能访问。

protected保护访问,只限于本类和子类访问,实例不能访问。

internal内部访问,只限于本项目内访问,其他不能访问。

public人缘好,跟谁都好,protect只和熟人好,private比较自闭.不过他们是三胞胎.class是他们的爹。

例:

比如说:一个人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,包括构造函数

补充:C#中internal和protect internal的理解

internal

internal关键字是用来修饰类和类的成员的,表示该内容只能在本程序集中访问。

程序集:一般输出形式为dll或exe的文件。

例子:

如果某个程序集中,有如下的类:

?
1
2
3
4
5
6
7
8
9
10
11
namespace InternalTest
{
    internal class InternalTest1
    {
     ...
    }
    public class InternalTest2
    {
     ...
    }
}

那么在另外一个程序集中,可以访问InternalTest2,但是不能访问InternalTest2。

protect internal

protect internal 是指protect or internal是指:在同一程序集中,或派生类中可以访问。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/weixin_43267344/article/details/100924565

延伸 · 阅读

精彩推荐