1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace ClassDemo 8 { 9 /// <summary> 10 /// 学员类 11 /// </summary> 12 /// 总结: 13 /// 字段:(成员变量) 14 /// 字段主要是为类的内部做数据交互使用,一般是private; 15 /// 字段可以赋值,也可以取值; 16 /// 当字段需要外部提供数据的时候,请将字段封装为属性,而不是使用公有字段,这是面向对象所提倡的; 17 /// 属性: 18 /// 属性一般是向外提供数据,主要用来描述对象的静态特征,所以,一般属性是public; 19 /// 属性可以根据需要设置为只读、只写,提高数据安全性; 20 /// 属性内部可以添加我们需要的业务逻辑,从而避免非法数据; 21 class Student 22 { 23 /// <summary> 24 ///字段:又称为成员变量,一般在类的内部做数据交互使用,所以一般使用private修饰; 25 ///字段命名规范:字段命名一般采用camel命名法,首字母小写 26 ///字段的通俗理解:字段好比我们的个人财产,只供我们自己使用,所以一般是private修饰; 27 ///添加标准:一个类总究竟需要添加几个字段,根据程序编写过程的需要来决定的; 28 /// </summary> 29 //字段:学号 30 private int studentId; 31 //字段:姓名 32 private string studentName = string.Empty; 33 //字段:年龄 34 private int age; 35 36 37 38 /// <summary> 39 /// 属性是外界访问私有字段的入口,属性本身不存任何数据 40 /// 给属性赋值,其实是给属性指向字段的私有字段赋值; 41 /// 读取属性值,其实是获取属性指向的私有字段值或其他值; 42 /// 属性一般首字母大写; 43 /// </summary> 44 //属性:学号 45 public int StudentId 46 { 47 get { return studentId; } 48 set { studentId = value; } 49 } 50 51 //属性:学生姓名 52 public string StudentName 53 { 54 get { return studentName; } 55 set { studentName = value; } 56 } 57 58 //属性:年龄 59 public int Age 60 { 61 //给属性添加约束; 62 get { return age; } 63 set { 64 if (value < 18) 65 age = 18; 66 else 67 age = value; 68 } 69 } 70 71 //方法:获取学员信息; 72 /// <summary> 73 /// 访问修饰符,可以省略,默认private,可以根据需要修改为public 74 /// 方法名,一般是“动词”或“动宾短语”,采用Pascal命名法,首字母大写,不能以数字开头 75 /// 参数列表:根据需要添加,也可以省略,参数列表要求“类型 参数名称”的形式,使用逗号分隔不同的参数; 76 /// 有返回值:使用return返回;return 语句后面不能再有其他语句; 77 /// 没有返回值:如果不返回任何数据,使用viod表示; 78 /// </summary> 79 /// <returns></returns> 80 81 public string GetStudent() 82 { 83 string info = string.Format("姓名:{0} 学号:{1}", studentId, studentName); 84 return info; 85 } 86 //自动属性 prop+tab+tab 87 //适用范围:不能直接操作私有字段,不能设置只读只写属性,不能添加验证逻辑; 88 public int MyProperty { get; set; } 89 } 90 }
内容来源于网络如有侵权请私信删除
- 还没有人评论,欢迎说说您的想法!