只读属性 IPLCModuleBase PLCModule => plcModuleBase;`

在C#中,通过 `=>` 表达式体语法可以创建只读属性,下面解释一下为什么 `public IPLCModuleBase PLCModule => plcModuleBase;` 是只读属性。

1.为什么它是只读属性?

1. **表达式体语法**:
   使用 `=>` 表达式体语法创建的属性,默认是 **只读的**,这意味着它没有提供 **set** 访问器,  只有 **get** 访问器。你只能读取该属性的值,而不能修改它。

   例如:
   ```
   public IPLCModuleBase PLCModule => plcModuleBase;
   ```

   这段代码是 **简化版的只读属性**,它没有 `set` 访问器,仅提供了一个 `get` 访问器,并且这个 `get` 返回的是 `plcModuleBase` 字段的值。由于没有 `set`,因此这个属性是 **只读的**。

2. **没有 `set` 访问器**:


   如果你想定义一个 **可读可写** 的属性,通常会写成:
   ```
   public IPLCModuleBase PLCModule { get; set; }
   ```
   但是,在你的代码中,只有 `get`,并且是用 `=>` 语法简化的写法,表示这是一个 **只读属性**,只能获取,不能设置。

3. **总结**:


   - 如果只写了 `get`(无 `set`),则这个属性是 **只读的**。
   - 使用 `=>` 语法就是为 `get` 访问器提供一个简单的表达式,它表示获取属性值的方式。

---

可以理解为:
- 它是 **只读的**,外部代码不能修改这个属性,只能获取它的值。
- 这里使用的 `=>` 是一个简化的写法,和传统的 `{ get { return xxx; } }` 是等价的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值