使用属性代替可访问的数据成员

  如果大家还在类型中定义公有的数据成员,或者还在手工添加get和set方法,请赶快停下来。属性在使我们可以将数据成员暴露为公有接口的同时,还为我们提供了在面向对象环境中所期望的封装。在C#中,属性(property)是这样一种语言元素:它们在被访问的时候看起来好像是数据成员,但他们却是用方法实现的。

      在C#中,属性是采用方法来实现的,那么属性也就就有方法所具有的全部功能。

    1、属性可以实现虚属性 

1 public class Customer
2 {
3 public virtual string Name { get; set; }
4 }

    2、属性也可以实现为抽象属性,或者作为接口定义的一部分

    3、属性还能添加多线程支持 

posted @ 2010-10-23 13:18  刘 慧  阅读(165)  评论(0编辑  收藏  举报