C#中类的属性

来源:互联网 发布:岁月神偷 网络歌手 编辑:程序博客网 时间:2024/06/06 12:52

下面来说下在C#在类里面和JAVA不同的一点,虽然两者都有字段与方法,但是C#多了一个属性,通过属性来控制私有成员变量的值是非常重要而且方便的。

比如就下面这个例子来说,年龄是人的一个很重要的属性,如果我们直接把年龄声明为public看上去可以很方便的进行修改,但是我们需要防止一些恶意的输入,比如输入-10?

用属性就能够很好地解决这个问题,通过这个方法来对重要的成员进行包裹,保证它的安全性。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication1{    public class Person    {        private int age;        public int Age        {            get            {                return this.age;            }            set            {                if (value >= 0)                {                    this.age = value;                }            }        }    }    class Program    {               static void Main(string[] args)        {            Person p = new Person();            p.Age = -2;            Console.WriteLine(p.Age);            p.Age = 10;            Console.WriteLine(p.Age);            p.Age = -1;            Console.WriteLine(p.Age);            Console.ReadKey();        }    }}

需要注意的是:

1)每一个属性最少有一个get或set

2)set中value是一个关键词,代表用户的输入

0 0
原创粉丝点击