1 using System; 2 3 namespace FunctionDemo2 4 { 5 public class Person 6 { 7 public string name; 8 public int age; 9 //构造方法-负责初始化对象10 //1.构造方法的方法名必须和类名一致11 //2.构造方法没有返回值,不需要写void12 13 //3.构造方法能够添加参数14 public Person(string name, int age)15 {16 //初始化成员变量17 this.name = name;18 this.age = age;19 Console.WriteLine("构造");20 }21 22 //4.构造方法允许重载23 public Person()24 {25 name = "Li";26 age = 14;27 28 }29 //5.如果没有给类添加构造方法,系统会提供一个默认构造30 //6.如果我们将某个构造方法设为私有类,就不允许再通过这个构造创建对象31 //private Person()32 //{33 34 //}35 //析构方法 - 在对象销毁时调用,用于释放内存36 //1. 每个类只能有一个析构方法37 //2. 析构方法不能有返回值38 //3. 析构方法不能有访问权限修饰符39 //4. 析构函数不能带有参数,更不能重载40 //5. 析构函数由系统自动调用,不能手动调用41 ~Person()42 {43 Console.WriteLine("析构");44 }45 }46 class Program47 {48 static void Main(string[] args)49 {50 //使用new关键字创建对象的时候,就已经调用了构造方法51 Person p = new Person("Li", 29);52 Console.WriteLine(p.name);53 Console.WriteLine(p.age);54 55 Console.WriteLine("主函数结束,程序准备退出!");56 57 //Person p2 = new Person();58 //Console.WriteLine(p2.name);59 //Console.WriteLine(p2.age);60 61 }62 }63 }