面向对象--01复习
类里面:
字段、属性、方法、构造函数
字段:存储数据
属性:保护字段、对字段的取值和设值进行限定
方法:描述对象的行为
构造函数:初始化对象(给对象的每个属性依次的赋值)
类中的成员,如果不加访问修饰符,默认都是private
using System; namespace 面向对象复习 { class Program { static void Main(string[] args) { Person zsPerson = new Person("张三",25,'男'); //new :1、在内存中开辟了一块空间 2、在开辟的空间中创建对象 3、调用对象的构造函数 zsPerson.SayHello();//非静态类用对象点出来 Person.SayHelloTwo();//静态类用类名直接点出来 Console.ReadKey(); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 面向对象复习 { class Person { ///类里面: //字段、属性、方法、构造函数 //字段:存储数据 //属性:保护字段、对字段的取值和设值进行限定 //方法:描述对象的行为 //构造函数:初始化对象(给对象的每个属性依次的赋值) //类中的成员,如果不加访问修饰符,默认都是private string _name; /// <summary> /// 属性的本质就是两个方法 /// </summary> public string Name { get { return _name; }//取值 set { if(value !="孙权") { value = "孙权";//这里是限定值的属性 } _name = value; }//赋值 } int _age; public int Age { get { return _age; } set { _age = value; } } char _gender; public char Gender { get { return _gender; } set { _gender = value; } } //this:1、当前类的对象 // 2、调用当前类的构造函数 public void SayHello() { string Name = "张三"; Console.WriteLine("{0},{1},{2},{3}", Name,this.Name, this.Age, this.Gender);//非静态类里可以调用非静态成员和静态成员 //上面这里加this跟不加this的区别就是为了区分局部变量跟属性 } private static int _id; public static void SayHelloTwo() { Console.WriteLine("Hello 我是静态的");//静态类里无法调用非静态成员 } //构造函数:1、没有返回值 连void也没有 // 2、构造函数的名称跟类名一样 public Person(string name,int age,char gender)//这里是传递参数给构造函数 { this.Name = name; this.Age = age; if(gender !='男'&&gender!='女') { gender = '男'; } this.Gender = gender; } public Person(string name,char gender):this(name,0,gender) { //this.Name = name; //this.Gender = gender; } } }

浙公网安备 33010602011771号