【C#学习】属性/属性访问函数

为了实现对数据的良好封装,C#为类提供了属性访问函数(简称属性,Property)。属性用于控制对字段的访问。属性包含 set 访问函数和 get 访问函数,分别用于写字段和读字段。

        class A
        {
            private string name;    // 被控制字段
            public string Name      // 属性
            {
                get { return name; }
                set { name = value; }  // value 为隐式参数,由C#提供,表示等于号的右值。
            }

        }

        public static void Main(string[] args)
        {
            A a = new A();
            a.Name = "a";
            Console.Write(a.Name);
        }
如果属性只有 get 访问函数,则此属性只读,只能作为右值;如果只有 set 方法,则此属性只写,只能作为左值。需要注意的是,如果属性封装的字段本身也是一个复合类型,则只读属性无法限制对这个复合类型对象的成员的修改,因为get会返回这个符合对象的引用,而引用是可能可以修改自己的成员的,但是直接修改引用是不行的,依旧还是只能做右值。比如:

        public class Address
        {
            public s
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值