带你走进C#修饰符

本文详细介绍了 C# 中的访问修饰符,包括 public、protected、internal 等,以及类修饰符如 abstract 和 sealed 的使用方法。此外还解释了成员修饰符的功能与注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 修饰符
    • 访问修饰符
    • 类修饰符
    • 成员修饰符
  • 注意事项
    • 默认修饰符
    • 需要注意的小细节
  • 文尾

修饰符

访问修饰符:对各个成员之间访问的限制规则。

public:访问不受限制。

protected:访问仅限于包含类或从包含类派生的类型。只有包含该成员的类以及继承的类可以存取。

Internal:访问仅限于当前程序集。只有当前工程可以存取。

protected internal:访问仅限于当前程序集或从包含类派生的类型。

private:只有包含该成员的类可以存取。

类修饰符:对类的访问限制规则。

abstract:可以被指示一个类只能作为其它类的基类。

sealed:指示一个类不能被继承。

成员修饰符:修饰成员类型。

abstract:指示该方法或属性没有实现。

override:对由基类继承成员的新实现。

readonly:指示一个域只能在声明时以及相同类的内部被赋值。

static:指示一个成员属于类型本身,而不是属于特定的对象。

virtual:指示一个方法或存取器的实现可以在继承类中被覆盖。


注意事项

默认修饰符:

成员默认可访问性
枚举enum隐式为public,但声明不允许使用访问修饰符
类classinternal
接口interface默认访问基本为internal;但是如果在其他public类中使用时,必须为public
结构体private
方法变量默认为private,但是声明于命名空间下并且在类外,则具有public和internal访问性

需要注意的小细节:
根据发生声明的上下文,只允许某些声明的可访问性,如果未指定访问修饰符,则使用默认的可访问性。

命名空间(namespace)隐式地具有public访问性,且不允许有访问修饰符。

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

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

virtual修饰符不能与private,static,abstract,override修饰符同时使用。

override修饰符不能与 new,static,virtual 修饰符同时使用,并且重写方法只能用于重写基类中的虚函数。

文尾

今天整理草稿箱,发现了这篇草稿,犹记得刚接触时的不解,所以在此完善此篇博客。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值