首页 > 代码库 > 【学习笔记】C# 构造和析构
【学习笔记】C# 构造和析构
- 构造方法
- 构造方法是一个特殊的方法,负责初始化对象
- 构造方法名必须和类名一致
- 构造方法没有返回值,但可以有参数,能够重载
- 构造方法可以不写,系统会自动为类添加一个无参的默认构造
- 如果将构造方法设置为Private,就不能再使用此构造创建实例
- 析构
- 析构方法在对象销毁时调用,用于释放内存
- 一个类只能有一个析构方法
- 析构方法没有返回值和参数,不能进行重载
- 析构方法由系统自动调用,不能手动调用
- 析构方法没有修饰符
-
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.构造方法没有返回值,不需要写void 12 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 Program 47 { 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 }
【学习笔记】C# 构造和析构
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。