使用class定义一个类
使用new创建类的实例,即对象,存放在托管堆中
类好比一个模板,对象是根据模板创建出来,它拥有模板定义的所有特性,但是不同的对象其相同特性的取值可以不同
赋值给“类”类型的变量,称为对象变量,它保存了对对象的引用(即对象的地址),存放在线程堆栈中
通过对象变量,可访问对象的公有成员,包括字段和方法
属性也属于类的成员,属性=字段+get/set方法
•定义私有字段,保存属性
•定义get方法,当读取属性值时,返回私有字段的值
•定义set方法,当对属性赋值时,将外部传入的值value,传递给私有字段
•在C#中,属于同一个类的成员(含字段、属性、方法)彼此访问,遵循以下规则:
–类的实例方法可以访问类的所有成员
–类的静态方法只能访问类的静态成员
示例代码:
1 //定义学生类,包括姓名字段,成绩属性,成绩验证方法 2 class Student 3 { 4 public string Name = null; 5 int _score = 0; 6 public int Score 7 { 8 get 9 { 10 return _score; 11 } 12 set 13 { 14 if (value < 0 || value > 100) 15 { 16 Console.WriteLine("成绩有误"); 17 return; 18 } 19 else 20 { 21 _score = value; 22 } 23 } 24 } 25 public void IsPass() 26 { 27 if (_score > 60) 28 { 29 Console.WriteLine("{0},你通过考试", Name); 30 } 31 else 32 { 33 Console.WriteLine("{0},你没通过考试", Name); 34 } 35 } 36 }
1 //创建对象,并赋值给变量 2 Student stu = new Student(); 3 //接收用户输入 4 Console.WriteLine("请输入学生姓名"); 5 string name = Console.ReadLine(); 6 Console.WriteLine("请输入考试成绩"); 7 string score = Console.ReadLine(); 8 //成绩进行类型转换 9 int int_score=0; 10 if(int.TryParse(score, out int_score)== false) 11 { 12 Console.WriteLine("请输入整数格式的成绩,如:69"); 13 } 14 //属性赋值,并调用方法 15 stu.Name = name; 16 stu.Score = int_score; 17 stu.IsPass(); 18 19 Console.ReadKey();
浙公网安备 33010602011771号