zoukankan      html  css  js  c++  java
  • 公有字段和属性的选择!

    一般在C#中,想“暴露”类中的某些数据给用户可以使用两种方式来实现,一种是使用公有字段,另外一种是使用属性来实现,下面我列举一些代码来比较这两种实现:

    1,使用公有字段:

    public class Student

    {

         public string Name;

    }

    2,使用属性:

        public class Student
        {
            private string _name;
            public string Name
            {
                get
                {
                    return _name;
                }
                set
                {
                    _name = value;
                }
            }
        }

    客户代码都是一样的:

            static void Main(string[] args)
            {
                Student studentOne = new Student();
                string name = studentOne.Name;
                studentOne.Name =inputString;
            }

    看上去似乎直接使用公有字段更简洁些,但是请大家留意这种情况,比如过一段时间需求更改为不允许对Name设置空值,使用公有字段就需要修改客户代码了:

            static void Main(string[] args)
            {

                Student studentOne = new Student();

              

                string name = studentOne.Name;

                if(inputString!=null&&inputString.Length!=0)

               {

                     studentOne.Name = inputString;

                }

            }

    如果客户代码中有多处设置Name的地方,那每一处都需要修改,使用属性的话只有修改属性的定义就可以了!这就是属性带来的便利!

  • 相关阅读:
    ThetaSome_ThetaAll子查询
    BMP文件解析
    IN-子查询
    由顶点坐标计算任意多边形面积
    Java入门——多态
    使用Notepad++开发Java程序
    C#利用VUDP.cs开发网络通讯应用例程
    C#利用Vini.cs操作INI文件
    RC522射频卡读写模块驱动(仅读取)
    Tupper自我指涉公式生成器
  • 原文地址:https://www.cnblogs.com/xuefeng1982/p/1503634.html
Copyright © 2011-2022 走看看