【C#】修饰符

本文深入探讨了C#中的访问修饰符,包括public、private、protected、internal及internalprotected,阐述了它们在不同场景下的应用。同时,文章还讲解了非访问修饰符如abstract、async、const等关键字的作用,以及默认访问修饰符的规则。

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

###访问修饰符
1、类型访问修饰符public、internal
2、类型成员访问修饰符public、internal、private、protected、internal protected
3、
public:最高访问级别。对访问公共成员没有限制
private:最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的
protected:受保护成员在其所在的类中、派生类中可以访问。(父子类中可以访问,准确来说是派生类)
internal:同一程序集的文件中,内部类型或成员才是可访问的

###非访问修饰符(关键字)
abstract 指示某个类只能是其他类的基类。抽象类里面可以有非抽象方法,但是抽象方法必须在抽象类里。
async 指示所修改的方法、 lambda 表达式或匿名方法是异步的。
const 指定无法修改字段或局部变量的值。
event 声明事件
extern 指示在外部实现方法。
new 从基类成员隐藏继承的成员。
override 提供从基类继承的虚拟成员的新实现。
partial — 部分在整个同一程序集中定义分部类、结构和方法。
readonly 声明一个字段,该字段只能赋值为该声明的一部分或者在同一个类的构造函数中。
sealed 指定类不能被继承。
static 声明属于类型本身而不是属于特定对象的成员。
unsafe 声明不安全的上下文。
virtual 在派生类中声明其实现可由重写成员更改的方法或访问器。
volatile 指示字段可由操作系统、硬件或并发执行线程等在程序中进行修改。
###默认访问修饰符
1、命名空间中定义的元素 没有指定访问修饰符时,默认是internal,并且无法显式地声明为private、protected或protected internal
2、成员的访问修饰符没有指定时,默认是private、有个特殊情况接口中成员的默认类型是public,实现是必须public的
###访问修饰符不一致
1、方法的可访问性 < 返回类型的可访问性
比如说:public XX Method (){ return xx }
XX是自定义的类 是私有的
就会冲突
###不可访问,因为它受保护级别的限制
1、访问性级别出错提示,可能它是internal 结果你在另一个程序集里出现了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值