蓝鸥Unity开发基础二——课时13 构造方法
一、构造和析构
构造方法
构造方法时一个特殊的方法,负责初始化对象
构造方法名必须和类名一致
构造方法没有返回值,但可以有参数,能够重载
构造方法可以不写,系统会自动为类添加一个无参数的默认构造
如果将构造方法设置为Private,就不能给你再使用此构造创建实例
1、构造方法初始化成员变量实例代码
using System;namespace Lesson_13{ public class Person{ public string name; public int age; //构造方法——负责初始化对象 //1、构造方法的方法名必须和类名一致 //2、构造方法没有返回值,不需要写void public Person(){ Console.WriteLine ("Hello"); //初始化成员变量 name="lanou"; age = "18"; } } class MainClass { public static void Main (string[] args) { //使用new关键字创建对象的时候,就已经调用了构造方法 Person p = new Person (); Console.WriteLine (p.name ); } }}
2、构造方法能够添加参数
using System;namespace Lesson_13{ public class Person{ public string name; public int age; //构造方法——负责初始化对象 //1、构造方法的方法名必须和类名一致 //2、构造方法没有返回值,不需要写void //3\构造方法能够添加参数 public Person(string name,int age){ //前面name是字段name,后面name是参数name //初始化成员变量 this.name = name; this.age = age; } } class MainClass { public static void Main (string[] args) { //使用new关键字创建对象的时候,就已经调用了构造方法 Person p = new Person ("老王",18); Console.WriteLine (p.name ); } }}
3、构造方法允许重载
using System;namespace Lesson_13{ public class Person{ public string name; public int age; //构造方法——负责初始化对象 //1、构造方法的方法名必须和类名一致 //2、构造方法没有返回值,不需要写void //3、构造方法能够添加参数 public Person(string name,int age){ //前面name是字段name,后面name是参数name //初始化成员变量 this.name = name; this.age = age; } //4、构造方法允许重载 public Person(){ name = "lanou"; age = 16; } } class MainClass { public static void Main (string[] args) { //使用new关键字创建对象的时候,就已经调用了构造方法 Person p = new Person (); Person p1 = new Person ("老王",18); Console.WriteLine (p.name ); Console.WriteLine (p1.name ); } }}
4、如果没有类添加构造方法,系统会提供一个默认构造
using System;namespace Lesson_13{ public class Person{ public string name; public int age; //构造方法——负责初始化对象 //1、构造方法的方法名必须和类名一致 //2、构造方法没有返回值,不需要写void //3、构造方法能够添加参数// public Person(string name,int age){ //前面name是字段name,后面name是参数name //初始化成员变量// this.name = name;// this.age = age;// } //4、构造方法允许重载// public Person(){ // name = "lanou";// age = 16;// } //5、如果没有类添加构造方法,系统会提供一个默认构造 //默认构造 public Person(){ } } class MainClass { public static void Main (string[] args) { //使用new关键字创建对象的时候,就已经调用了构造方法 Person p = new Person (); Person p1 = new Person ("老王",18); Console.WriteLine (p.name ); Console.WriteLine (p1.name ); } }}
5、如果将构造方法设置为Private,就不能给你再使用此构造创建实例
如果我们将某个构造方法设为私有的,就不允许再通过这个构造创建对象
推荐视频讲师博客:http://11165165.blog.51cto.com/