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里)。
  • 相关阅读:
    js 屏蔽非数字字符输入
    javaScript注释变成颜文字
    canvas 画图优化
    快速回到顶部
    多行文字垂直居中
    innerHTML 与 outerHTML区别
    高内聚、低耦合
    webstorm快捷键
    HTML、CSS规范
    RabbitMQ学习笔记(3)----RabbitMQ Worker的使用
  • 原文地址:https://www.cnblogs.com/Bruce_H21/p/728011.html
Copyright © 2011-2022 走看看