C# | 属性的理解和使用

一、正常定义一个类型

int age;

我们有两种选择:

1.自己可以设置和获取

private int age;

2.外人和自己都可以设置和获取

public int age;

那我们会有个问题:

如果我只希望自己能设置,但不希望自己获取;

或者,希望自己和外人都能设置,但不能获取;

或者,希望自己能获取,但不能设置

或者,希望自己和外人都能获取,但不能设置

这时候就做不到了。

如果我希望大于等于0的数可以设置,小于0的数不允许设置

这时候就做不到了。

总结:属性是对这个数据做更具体的规划。

二、属性的使用

//定义一个数据
private int age;

//对定义的数据做描述
private int Age { get; set; }

仿照下面的写法,把age的第一个字母大写,写成Age,就说明,下面这部分是在对age做说明。

这已经是约定俗成了,所以,如果你懒一点,你可以不写private int age;它会自己默认给你建一个。那么你只写下面就可以。

//对定义的数据做描述
private int Age { get; set; }

●private意思:只有自己能用,还是所有人都能用

●get意思:这个数据可以获取

例(正确):

        private int Age { get;set;}

        void Main() {
            int a = Age;
        }

例(报错):

        private int Age { set; }

        void Main() {
            int a = Age;
        }

报错会告诉你,我没有给你获取的权限,你不能获取。

●set意思:这个数据可以设置

例(正确):

        private int Age {get;set;}

        void Main() {
            Age=5;
        }

例(报错):

        private int Age { get;}

        void Main() {
            Age =5 ;
        }

报错会告诉你,我没有给你获取的权限,你不能设置。

这个get和set是默认public,如果有需要,还可以设置为private

public int Age { private get; set; }

这句的意思就是:虽然Age所有人都能设置,但只有自己能获取

三、属性的数值限制 

如果我希望大于等于0的数可以设置,小于0的数不允许设置

        int Age {
            //获取的时候,就把Age给它
            get { return Age; }
            //设置的时候
            set
            {
                //value就是传递进来的值叫value
                //如果value>=0,就把value设置给Age,反之不管
                if (value >= 0)
                {
                    Age = value;
                }
                else {
                    return;
                };
            } 
        }

四、总结

这样我们就能对我们设置的数据,做一些限制,不是谁想用就能用,不是想设置什么就能设置什么!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菌菌巧乐兹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值