C#中属性和成员变量的区别说明

时间:2022-02-17 22:36:57 

一个类,有时候搞不清楚到底用成员变量还是属性。
如:
成员变量
public   string   Name;

或者用属性
private   string   name
public   string   Name
{
        get
        {
                return   name;
        }
        set
        {
                name   =   value;
        }
}

属性与成员变量类似,它们都提供数据存储,但属性的功能远比成员变量强大。属性由特殊方法(Get   和   Set   访问器)访问。Get   和   Set   访问器允许在设置或检索属性之后验证属性值、执行其他代码或执行其他任务

例如

成员变量这样写
public   readonly   string   Name;
那还是可以是只读了

private   string   name
public   string   Name
{
        get
        {
                return   name;
        }

}

面向对象的编程方法是要抽象、封装;在类中,定义的变量是正对类本身而言,我们把它们叫做域。它可以为public   ,private等;属性是针对外部看到的类的特性,是类展示给外部使用者的特性。前面我们讲到了域可以为public,但这样把域申明为public将 不利于类的封装,因为外部使用者可以对类进行直接修改。所以我们就可以用到属性,我们只是公开它们的属性,至于如何对其进行赋值(set)如何进行取值 (get)都已经进行了封装,对于类外部是不可见的。对于外部使用者来说只能够使用它,不能控制它,如何控制操作是由类自身决定的。你理解了吗?

标签:成员变量,属性,C#
0
投稿

猜你喜欢

  • 从"Show tabs"了解Android Input系统

    2023-12-21 05:20:49
  • SpringBoot整合MongoDB完整实例代码

    2023-10-22 03:42:48
  • 快速解决Android适配底部返回键等虚拟键盘的问题

    2021-10-25 14:50:23
  • Java二维数组与稀疏数组相互转换实现详解

    2022-10-28 07:27:33
  • springboot整合security和vue的实践

    2021-09-17 20:39:28
  • C# 中 “$” 符号的作用以及用法详解

    2022-09-11 17:03:50
  • c#动态类型,及动态对象的创建,合并2个对象,map实例

    2023-04-28 17:40:12
  • 解决dubbo错误ip及ip乱入问题的方法

    2023-08-06 17:18:02
  • 教你使用Java获取当前时间戳的详细代码

    2021-09-19 04:41:02
  • 相对路径和绝对路径的写法总结

    2022-06-17 07:38:47
  • Java微信支付之公众号支付、扫码支付实例

    2022-07-10 10:23:11
  • C# Split函数根据特定分隔符分割字符串的操作

    2023-11-07 07:40:25
  • Android 开发使用PopupWindow实现弹出警告框的复用类示例

    2022-04-07 03:43:42
  • spring boot 静态资源处理方法

    2022-07-14 22:12:42
  • Android Gradle模块依赖替换使用技巧

    2021-07-03 20:22:53
  • Java校验银行卡是否正确的核心代码

    2022-01-28 19:53:29
  • C# MVC模式中应该怎样区分应用程序逻辑(Controller层)和业务逻辑(Model层)?

    2022-06-25 12:34:55
  • Android监听电池状态实例代码

    2022-01-31 21:28:32
  • 使用Mybatis如何实现删除多个数据

    2023-06-15 21:11:57
  • 解决BeanUtils.copyProperties无法成功封装的问题

    2023-11-23 14:59:23
  • asp之家 软件编程 m.aspxhome.com