C#基础之访问修饰符
|
admin
2024年3月26日 18:57
本文热度 1996
|
前言
访问修饰符是用于设置类型和类型成员的可访问性级别,设置控制类、属性、方法等成员在程序中的权限范围。C#提供了5个访问修饰符关键字,使用它们可指定 七个可访问性级别。本文介绍C#提供的访问修饰符。
访问修饰符
C#中的访问修饰符关键字有public、private、internal、protected、file,通过这些关键字在进行声明时指定类型或成员的可访问性,形成下面的七个可访问性级别:1、public:公有的,访问不受限制。
2、private:私有的,只有同一类或结构中的代码才可以访问。
3、internal:内部的,同一程序集中的任何代码都可以访问。
4、protected:受保护的,仅限于同一个类或从该类派生的类中的代码可以访问。
5、protected internal:访问限于当前程序集或派生自包含类的类型。
6、private protected:访问限于包含类或当前程序集中派生自包含类的类型。
7、file:已声明的类型仅在当前源文件中可见。
通过下表是每个访问修饰符在不同位置上的访问限制:

默认访问限制
C#语言中如果声明时未使用访问修饰符关键,则都有默认的访问修饰符来限制访问,下表不同类型的默认访问。

示例
下面我三段简单的代码,了解访问修饰符在编写代码上的体现。using System;using System.Text;
namespace Fountain.Net.Base.ExampleLib{ public class Modifier { /// <summary> /// 声明内部的字符串变量 /// </summary> internal string internalFruit=string.Empty; /// <summary> /// 声明公有的字符串变量 /// </summary> public string publicFruit; /// <summary> /// 声明内部受保护的字符串变量 /// </summary> internal protected string internalProtectedFruit=null; }}//-- 在同一程序集中的另一个类中调用访问类的成员using System;using System.Text;
namespace Fountain.Net.Base.ExampleLib;{ public class UsingClass { /// <summary> /// 声明字符串变量,将类Modifier的internalFruit进行赋值 /// </summary> private string tempInternal=new Modifier().internalFruit; /// <summary> /// 声明字符串变量,将类Modifier的publicFruit进行赋值 /// </summary> private string tempPublic= new Modifier().publicFruit; /// <summary> /// 声明字符串变量,将类Modifier的internalProtectedFruit进行赋值 /// </summary> private string tempProtected=new Modifier().internalProtectedFruit; }}//-- 在不同程序集中,只能调用Modifier类的publicFruit,因为它是公有的using System;using System.Text;using Fountain.Net.Base.ExampleLib;
namespace Fountain.Net.Base.Sample{ class Program { static void Main(string[] args) { try { // 声明字符串变量,将类Modifier的publicFruit进行赋值 string tempPublic = new Modifier().publicFruit; } catch (Exception e) { Console.WriteLine("异常信息: {0}", e.Message); } // 等待接收控制台输入 Console.ReadLine(); } }}
小结
以上就是C#中的访问修饰符的内容,通过这些限制对数据及对象进行封装。
该文章在 2024/3/26 18:57:27 编辑过