美文网首页
C#属性和成员变量的区别?

C#属性和成员变量的区别?

作者: BugUnknown | 来源:发表于2018-08-22 20:57 被阅读6次

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

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)都已经进行了封装,对于类外部是不可见的。对于外部使用者来说只能够使用它,不能控制它,如何控制操作是由类自身决定的。

相关文章

  • 成员变量\成员属性\懒加载的作用

    先来认识一下成员变量和成员属性 成员变量和成员属性的区别: 成员变量的执行效率比成员属性高 成员属性自动生成get...

  • C#属性和成员变量的区别?

    一个类,有时候搞不清楚到底用成员变量还是属性。如:成员变量 或者用属性 属性与成员变量类似,它们都提供数据存储,但...

  • iOS 每天问题解惑(一)

    目录: Pragma Mark — NO.1 iOS 中成员变量和属性的区别 iOS 开发中成员变量与属性的区别 ...

  • iOS复习之成员变量、成员属性

    复习下两种语言成员变量和成员属性如何创建 iOS 开发中成员变量与属性的区别iOS开发 -- 属性与成员变量 关于...

  • iOS中的成员变量和属性

    成员变量和属性的区别 一、成员变量 1、概念相关 成员变量:成员变量,成员变量包含基本数据类型的变量和对象类型的变...

  • iOS 成员变量和属性的区别

    本次主要介绍下面几个问题: 成员变量和属性有什么区别? 成员变量和属性通过Clang转换之后的区别? 在C++层面...

  • 开发问题笔记(十八)

    目录 1.iOS中各种变量的区别(成员变量、属性变量、局部变量..) 1.iOS中各种变量的区别(成员变量、属性变...

  • objc runtime (五)属性及成员变量 1

    属性和成员变量的区别 成员变量、属性 成员变量一般由_obj表示,默认为@protected一般类内访问使用。类外...

  • 2020-04-05 KVC

    课程引入:成员变量、实例变量、属性,区别是什么?---分类不能添加实例变量 成员变量 -- 实例变量 -- 属性 ...

  • 成员变量、实例变量和属性变量的区别

    成员变量、实例变量和属性变量的区别: 1、成员变量是声明在类{}中的 2、实例变量其实是包含在成员变量...

网友评论

      本文标题:C#属性和成员变量的区别?

      本文链接:https://www.haomeiwen.com/subject/nlcuiftx.html