并且将字段私有化

时间:2022-03-05 03:08:27

2:属性判断字段的安适

3:对属性的解释

1:字段是什么

字段其实在上一节我们就使用过了:再来详细的说他一说  

amespace cw { public enum gender //public 是为了让所有的类都可以使用 { 男, 女 } public class Clerk { //这就是字段了,那么字段一般 是下划线加变量名 _arg ;;字段是用来存放数据 public string _name; public gender _gerder; public int _age;       
     public void show() { Console.WriteLine("{0}是{1},{2}岁。",this._name,this._gerder,this._age); } } ############挪用################# class Program { static void Main(string[] args) { //要想使用另外类要先实例化 Clerk zs = new Clerk(); zs._name = "张三"; zs._gerder = gender.男; zs._age = -24; zs.show(); Console.ReadKey(); } } } //输出:张三是男,-24岁

2:属性判断字段的安适

看到字段输出 了吗? 

张三是男,-24岁    

what ? 输出的是-24岁这不如何常理啊!可是我字段就是让存放数据的啊,,又不能对判断说能不能放,这可怎么办。。。。。

这时候我们的主人公属性就出来了:那么属性的感化是什么呢?

掩护字段,对字段的取值与赋值进行限定。 

实例:改削上面字段BUG:

说明: 属性往往被声明在字段不才方,并且将字段私有化。 打个比喻就是:属性是男人,主外。而女人主内,并且还要将她私有化。

并且将字段私有化

并且将字段私有化

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace cw { public enum gender //public 是为了让所有的类都可以使用 { 男, 女 } public class Clerk { //这就是字段了,那么字段一般 是下划线加变量名 _arg ;;字段是用来存放数据 public string _name; public gender _gerder; private int _age; public int Age { get { return _age; } set { if (value < 0 || value > 120) value = 0; _age = value; } } public void show() { Console.WriteLine("{0}是{1},{2}岁。",this._name,this._gerder,this.Age); } } } using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace cw { class Program { static void Main(string[] args) { //要想使用另外类要先实例化 Clerk zs = new Clerk(); zs._name = "张三"; zs._gerder = gender.男; zs.Age = -24; zs.show(); Console.ReadKey(); } } }

请求完整实例 3:对属性的说明

凡是我们将get和set称为访谒器 get属性访谒器用于返回属性值 set 属性访谒器用于分配新值 属性又分了4种: 1)既读又写,如这个实例; 2)只读,只有一个get访谒器 3)只写,只有一个set访谒器 4)自动 getset

 

标签:

原文地点:https://www.cnblogs.com/hero799/p/8666695.html