work hard work smart

专注于Java后端开发。 不断总结,举一反三。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

c# 类中字段属性设计

Posted on 2012-03-30 19:50  work hard work smart  阅读(582)  评论(0编辑  收藏  举报

c# 类中字段属性设计

1、当把属性设计成private set时,表示在外部类中就不能对该属性赋值。如

public  class A
    {
        string pwd;
        public event EventHandler PasswordChanging;

        public string Pwd
        {
            get { return pwd; }
            private set
            {
                if (string.IsNullOrEmpty(value))
                {
                    throw new ArgumentException("password cannot be empty");
                }
                if (pwd != value)
                {
                    if (PasswordChanging != null) PasswordChanging(this, EventArgs.Empty);
                }
                pwd = value;
            }
        }

        void Test()
        {
            this.pwd = "abc";                 // 直接赋值,什么额外事情都不会发生
              this.Pwd = "efg";                 // 可以引发密码更改事件,可以进行校验
        }
    }

 引用CSDN

 

属性的设计,更新中....