面向对象18.11.2
Posted 123mutouren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象18.11.2相关的知识,希望对你有一定的参考价值。
字段:
- 主要是为类的内部做数据交互,一般都是peivate。
- 可以赋值,也可以取值。
- 当字段需要为外部提供数据时将字段封装为属性,而不是公有化。
属性:
- 一般向外提供数据访问,主要用来描述对象的静态特征,一般为public。
- 可以设置只读,只写,可用来提高数据安全性。
- 属性内部可以添加业务逻辑,避免非法数据。
1.使用属性的必要性:
- 避免非法数据:通过属性访问私有字段,不会更改字段,可以保证数据有效性,通常在get和set方法中添加需要的业务逻辑。
- 可以通过属性设置只读属性,保护数据,使其不能被赋值,可替代readonly。
private DateTime birthday;
public DateTime Birthday
{
get { return birthday; }
set { birthday = value; }
}
- 属性可以直接调用方法,或者添加其他业务逻辑。
2.自动属性:
- 只适用于标准属性,不能使用只读只写。
public string StudentName{get ;set }
以上是关于面向对象18.11.2的主要内容,如果未能解决你的问题,请参考以下文章