zoukankan      html  css  js  c++  java
  • 字段和属性

    刚到公司,坐在座位上看昨天打印的单例模式;其中分不清字段和属性的区别了,现在来复习一波

    • 属性和字段的区别

         在C#中,我们可以自由的访问公有字段,但在一些场合中,我们可能希望限制字段的赋值范围、或是要求字段只能读或只能写,或是在改变字段时能改变对象的其他一些字段值,这些单靠字段是无法做到的,

        于是就有了属性,属性中包含两个块:set和get,set块负责属  性的写入工作,get块负责属性的读取工作。

    • get和set

     有两个类person:

        public class person//这样定义的是字段

        {     public string name;    }

        public class person//这样定义的是属性(简写法)

        {      public string Name{set;get;}    }

        第一个类型的name属性未封装,其name属性直接通过public关键字暴露给系统中的其他类了,而第二个类型的name属性通过get set关键字进行了封装,get和set分别对应的是可读和可写,相当于如下代码:

        private string name;//真正的字段被私有化,被保护起来了。

        public string Name//对外展示的数据

        {

          get { return name; }

         set { name = value; }

       }    

    这样的写法就是属性属性里的get,set访问器可以对字段提供一些安全保护了(个人理解为使用一些逻辑来保护字段的值)对字段的一些限制

  • 相关阅读:
    AcWing 276. I-区域
    学习笔记:可持久化线段树(主席树):静态 + 动态
    NOIP2016提高组 天天爱跑步
    AcWing 195. 骑士精神
    标准文档流
    css 盒模型
    css 继承性和层叠性
    css 选择器
    css 引入方式
    html body中的标签2
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/9241836.html
Copyright © 2011-2022 走看看