当前位置: 代码迷 >> VB Dotnet >> property进程是做什么用的呢
  详细解决方案

property进程是做什么用的呢

热度:166   发布时间:2016-04-25 02:16:26.0
property过程是做什么用的呢?
我是做VC的,现在学VB2010  看到类的时候有点不解 property是做什么用的呢?是不是对成员变量的读写保护呢?什么情况下会使用到呢?
------解决方案--------------------
是不是对成员变量的读写保护呢?
是的~

只是是变量就使用,现在的变量都是不推荐
public int Length;
obj.Length=10;//不推荐

推荐
print int _length;
public void SetLength(int length){.做一些值保护,比如不能少于0....}
public int GetLength(){.....}

但每次都这样写很蛋疼~然后就有了语法糖property

既然是从VC来的 为什么不学C# 而是VB呢~
------解决方案--------------------
在面向对象的设计准则中有一条,就是对象外界只能通过方法获取和改变对象的状态。

也就是说不应该暴露任何的共有字段。如果你们公司比较正规,有Code review,那么如果你写了公有字段是不允许的。

很显然,当你坚持这么做的时候,你会发现,用GetXXX和SetXXX作为方法名会成为一个很好的约定,而它们的参数格式无非是:
void SetXXX(类型 value)和 类型 GetXXX()。

那么C#和VB.NET允许你用一种更简单的方式定义和调用这样的方法,这就是属性的由来。
  相关解决方案