属性的好处,就是对存入公共变量的值可以进行处理,如果觉得该值不合法,可以就地变换或者直接提出警告,只不过多花了点点时间,所以有一点点慢。但对于该类所生成的对象的使用安全,还是有相当多的好处的,至少运行时,因公共变量值的错误而产生的问题会大大减少。
用公共变量速度快,就是因为少了中间处理的环节,但是也因此更直接地对类的内容进行了操作和控制,比起属性的使用来说,相对的安全性就变低了。
应该说属性与公共变量各有各的用途,否则公共量变就会被取消掉。
公共变量的好处,就是快。但由于这种用法必须开放变量访问类型为PUBLIC,对象的调用者就可以直接修改其值,值的内容是否合法,运行中是否会出错,就没有了保障。所以一般不建议直接使用公共变量,因为会降低类的可重用性。但偶尔会有些情况,我们根本没必要去使用什么属性,只要用最简单的方法就可以实现的情况,我们还是可以考虑使用公用变量的。
取舍,都是需要根据具体情况来判断的。想获得某方面的优势,都是通过对另一方面某种程度的牺牲换来的。但并不是绝对的谁好,谁不好。
简单说,在你的类中,如果某个变量
1、允许自由读写
2、取值范围仅受数据类型约束而无其它任何特定限制
3、值的变动不需要引发类中其它任何成员的相应变化
那就可以不使用属性,直接使用公共变量,但不建议这么使用
C#.NET中的字段与属性_2 为什么要用属性,布布扣,bubuko.com
时间: 2024-10-13 11:31:18