C# 参考之上下文关键字:get、set、value (ZT)

 
get、set、value

get :在属性或索引器中定义“访问器”方法,以检索该属性或该索引器元素的值。

set :属性或索引器中的“访问器”方法,用于设置属性或索引器元素的值。

value: 隐式参数,用于设置访问器以及添加或移除事件处理程序。


c#通过属性特性读取和写入字段,而不直接读取和写入,以此来提供对类中字段的保护.

只带有 get 访问器的属性称为只读属性。无法对只读属性赋值。
只带有 set 访问器的属性称为只写属性。只写属性除作为赋值的目标外,无法对其进行引用。

// 简单示例
class Employee
{
    
private string _name;
    
public string Name
     {
        
get { return this._name;   }
        
set { this._name = value; }
     }
}

注意

  1. get、set“访问器”,在默认情况下具有相同的访问级别。但是有时鉴于对读写的考虑,通常可以限制set的访问级别。对属性或索引器使用访问修饰符受以下条件的制约:
    1. 不能对接口或显式接口成员实现使用访问器修饰符。

    2. 仅当属性或索引器同时具有 set 和 get 访问器时,才能使用访问器修饰符。这种情况下,只允许对其中一个访问器使用修饰符。

    3. 如果属性或索引器具有 override 修饰符,则访问器修饰符必须与重写的访问器的访问器(如果有的话)匹配。

    4. 访问器的可访问性级别必须比属性或索引器本身的可访问性级别具有更严格的限制。


属性vs.函数

l       相似点

Ø       都包含执行代码

Ø       都可以有访问修饰符

Ø       都可以有virtual, abstract, override 修饰符

Ø       都可以用在接口中

l       不同点

Ø       属性只能拥有get/set 语句

Ø       属性不可以是void 型

Ø       属性不能使用参数

Ø       属性不能使用[ ] 参数

Ø       属性不能使用括号
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值