zoukankan      html  css  js  c++  java
  • 为什么不直接使用成员变量而使用属性呢?

    如果你现在是C#开发人员的话,你大概非常习惯编写象下面这个代码片段一样带有基本属性的类型:
    public class Person {

            
    private string _firstName;
            
    private string _lastName;
            
    private int _age;
            
            
    public string FirstName {

                
    get {
                    
    return _firstName;
                }
                
    set {
                    _firstName 
    = value;
                }
            }

            
    public string LastName {

                
    get {
                    
    return _lastName;
                }
                
    set {
                    _lastName 
    = value;
                }
            }        
            
            
    public int Age {

                
    get {
                    
    return _age;
                }
                
    set {
                    _age 
    = value;
                }
            }
        } 

    Scott Guthrie 在博客中这样诠释:
    这是因为,向外面呈现公开的成员变量有很多不好的地方。二个最大的问题是:
    1) 你无法轻易地对成员变量做数据绑定,
    2) 如果你从类中向外呈现成员变量的话,之后,你不重新编译那些引用老的类的任何程序集,就无法将它们改成属性(譬如,要添加验证逻辑到setter里)。
  • 相关阅读:
    Mongodb常用操作(转载)
    java中对象转换工具类,很好用
    IDEA中配置tomcat出现乱码的解决
    小山博客--面试题答案
    Redis简单配置和使用
    线程的控制和线程池
    进程与线程详细解释
    Quartz .Net(定时框架):
    C#面向对象几组关键字的详解(this,base,dynamic,var,const,readonly,is,as)
    C#设计模式--抽象工厂模式(创建型模式)
  • 原文地址:https://www.cnblogs.com/Bruce_H21/p/728011.html
Copyright © 2011-2022 走看看