-书写上的区别
1. 访问修饰符
字段和属性都有访问修饰符
作用:
1. 设定访问权限
2. 限制类中的成员(属性、方法等)可访问的范围
访问范围通常有,类的内部、类的外部。
常用类型:private(私有的,仅类的内部使用);public(公有的,没有访问限制)
Tips:类的成员在定义时,没有写出访问修饰符,则默认是private。
对应到字段和属性中,通常字段修饰为private,属性修饰为public。
2.字段
a.字段又称为:“成员变量”,一般在类的内部做数据交互使用。
b.字段命名规范:camel命名法(首单词字母小写)**。
-字段主要是为类的内部做数据交互使用,字段一般是private。
-字段可读可写。
-当字段需要为外部提供数据的时候,请将字段封装为属性,而不是使用公有字段(public修饰符),这是面向对象思想所提倡的。
3.属性
a:在面向对象设计中主要使用属性描述对象的静态特征。
b:Pascal命名法(首字母大写),数据类型要和对应的字段要一致。
理解:属性本质是一个方法,其实就是外界访问私有字段的入口,属性本身不保存任何数据,
在对属性赋值和读取的时候其实就是操作的对应私有字段。
-处理的是studentName字段
属性的作用
A.避免出现非法数据
通过属性的set方法加入判断逻辑,从而排除这种非法数据。
(set中加入了if条件判断)B.限定属性只读或者只写
例如有些属性为了保护数据,根据需要,屏蔽set或get方法达到只读和只写。
-无set方法C.没有对应私有字段的属性,例如根据生日属性获取到年龄。
-没有表达年龄的字段,只能通过Age属性计算年龄
Convert.ToDateTime() 转换为日期型(datetime)
a.属性一般是向外提供数据,主要用来描述对象的静态特征,所以,属性一般是public。
b.属性具备get和set方法,可以在方法里加入逻辑处理数据,灵活拓展使用。