c#访问修饰符

C#中有多种访问修饰符,用于控制类、结构、方法、属性等成员的访问权限。

注意:只有public和internal可以修饰class

以下是常用的访问修饰符及其示例代码:

  1. public:公共访问修饰符,可以在任何地方访问。
csharp 复制代码
public class MyClass
{
    public int MyProperty { get; set; }
    
    public void MyMethod()
    {
        // Code here
    }
}
  1. private:私有访问修饰符,只能在当前类内部访问。
csharp 复制代码
public class MyClass
{
    private int myField;
    
    private void MyMethod()
    {
        // Code here
    }
}
  1. protected:受保护的访问修饰符,只能在当前类及其派生类内部访问。
csharp 复制代码
public class MyBaseClass
{
    protected int myField;
}

public class MyDerivedClass : MyBaseClass
{
    public void MyMethod()
    {
        myField = 10; // 可访问基类的受保护成员
    }
}
  1. internal:内部访问修饰符,只能在当前程序集内部访问。(通过项目引用在另一个项目中访问不了)
csharp 复制代码
internal class MyClass
{
    internal int MyProperty { get; set; }
    
    internal void MyMethod()
    {
        // Code here
    }
}
  1. protected internal:受保护的内部访问修饰符,可以在当前程序集内部及其派生类中访问。(通过项目引用,实现父类可以在项目中访问)
csharp 复制代码
public class MyBaseClass
{
    protected internal int myField;
}

public class MyDerivedClass : MyBaseClass
{
    public void MyMethod()
    {
        myField = 10; // 可访问基类的受保护内部成员
    }
}

以上是C#中常用的访问修饰符,可以根据需要选择合适的修饰符来控制成员的访问权限。

相关推荐
葛小白12 小时前
C#数据类型:List
开发语言·c#
weixin_456904273 小时前
基于C#的文档处理
开发语言·c#
gc_22996 小时前
C#测试调用OpenXml合并word文档的表格单元格
c#·openxml·合并单元格
唐青枫7 小时前
C#.NET PeriodicTimer 深入解析:高效异步定时器的正确打开方式
c#·.net
赵庆明老师1 天前
C# 结合Redis Cache 访问MySQL数据库
数据库·redis·c#
yi碗汤园1 天前
【一文了解】八大排序-冒泡排序、选择排序
开发语言·前端·算法·unity·c#·1024程序员节
c#上位机1 天前
wpf之数据类型转换
c#·wpf·mvvm
宝桥南山1 天前
.NET - .NET Aspire的Command-Line和GitHub Copilot
microsoft·微软·c#·asp.net·.net·.netcore
向宇it1 天前
【推荐100个unity插件】unity易于使用模块化设计的天空、体积云和天气系统——Enviro 3
游戏·3d·unity·c#·游戏引擎
我是唐青枫1 天前
C#.NET SqlKata 使用详解:优雅构建动态 SQL 查询
sql·c#·.net