美文网首页
【蓝鸥AR/VR开发基础二】 构造和析构

【蓝鸥AR/VR开发基础二】 构造和析构

作者: 蓝鸥3G | 来源:发表于2016-09-08 13:22 被阅读0次

    蓝鸥(www.lanou3g.com)是一家集产、学、研、创为一体的综合性移动互联网研发培训机构,致力于iOS开发、Unity3D游戏开发、Android开发、HTML5前端开发和Web安全攻防等技术人才的培养。

    一、构造和析构

    构造方法

    构造方法时一个特殊的方法,负责初始化对象

    构造方法名必须和类名一致

    构造方法没有返回值,但可以有参数,能够重载

    构造方法可以不写,系统会自动为类添加一个无参数的默认构造

    如果将构造方法设置为Private,就不能给你再使用此构造创建实例

    1、构造方法初始化成员变量实例代码

    usingSystem;

    namespaceLesson_13

    {

    publicclassPerson{

    publicstringname;

    publicintage;

    //构造方法——负责初始化对象

    //1、构造方法的方法名必须和类名一致

    //2、构造方法没有返回值,不需要写void

    publicPerson(){

    Console.WriteLine("Hello");

    //初始化成员变量

    name="lanou";

    age="18";

    }

    }

    classMainClass

    {

    publicstaticvoidMain(string[]args)

    {

    //使用new关键字创建对象的时候,就已经调用了构造方法

    Personp=newPerson();

    Console.WriteLine(p.name);

    }

    }

    }

    2、构造方法能够添加参数

    usingSystem;

    namespaceLesson_13

    {

    publicclassPerson{

    publicstringname;

    publicintage;

    //构造方法——负责初始化对象

    //1、构造方法的方法名必须和类名一致

    //2、构造方法没有返回值,不需要写void

    //3\构造方法能够添加参数

    publicPerson(stringname,intage){

    //前面name是字段name,后面name是参数name

    //初始化成员变量

    this.name=name;

    this.age=age;

    }

    }

    classMainClass

    {

    publicstaticvoidMain(string[]args)

    {

    //使用new关键字创建对象的时候,就已经调用了构造方法

    Personp=newPerson("老王",18);

    Console.WriteLine(p.name);

    }

    }

    }

    3、构造方法允许重载

    usingSystem;

    namespaceLesson_13

    {

    publicclassPerson{

    publicstringname;

    publicintage;

    //构造方法——负责初始化对象

    //1、构造方法的方法名必须和类名一致

    //2、构造方法没有返回值,不需要写void

    //3、构造方法能够添加参数

    publicPerson(stringname,intage){

    //前面name是字段name,后面name是参数name

    //初始化成员变量

    this.name=name;

    this.age=age;

    }

    //4、构造方法允许重载

    publicPerson(){

    name="lanou";

    age=16;

    }

    }

    classMainClass

    {

    publicstaticvoidMain(string[]args)

    {

    //使用new关键字创建对象的时候,就已经调用了构造方法

    Personp=newPerson();

    Personp1=newPerson("老王",18);

    Console.WriteLine(p.name);

    Console.WriteLine(p1.name);

    }

    }

    }

    4、如果没有类添加构造方法,系统会提供一个默认构造

    usingSystem;

    namespaceLesson_13

    {

    publicclassPerson{

    publicstringname;

    publicintage;

    //构造方法——负责初始化对象

    //1、构造方法的方法名必须和类名一致

    //2、构造方法没有返回值,不需要写void

    //3、构造方法能够添加参数

    //publicPerson(stringname,intage){

    //前面name是字段name,后面name是参数name

    //初始化成员变量

    //this.name=name;

    //this.age=age;

    //}

    //4、构造方法允许重载

    //publicPerson(){

    //name="lanou";

    //age=16;

    //}

    //5、如果没有类添加构造方法,系统会提供一个默认构造

    //默认构造

    publicPerson(){

    }

    }

    classMainClass

    {

    publicstaticvoidMain(string[]args)

    {

    //使用new关键字创建对象的时候,就已经调用了构造方法

    Personp=newPerson();

    Personp1=newPerson("老王",18);

    Console.WriteLine(p.name);

    Console.WriteLine(p1.name);

    }

    }

    }

    5、如果将构造方法设置为Private,就不能给你再使用此构造创建实例

    如果我们将某个构造方法设为私有的,就不允许再通过这个构造创建对象

    二、析构方法

    析构方法——在对象销毁时调用,用来释放内存的

    析构方法在对象销毁时调用,用于释放内存空间

    一个类只有一个析构方法

    析构方法没有返回值和参数,不能进行重载

    析构方法有系统自动调用,不能手动调用

    析构方法没有修饰符

    usingSystem;

    namespaceLesson_13

    {

    publicclassPerson{

    publicstringname;

    publicintage;

    //构造方法——负责初始化对象

    //1、构造方法的方法名必须和类名一致

    //2、构造方法没有返回值,不需要写void

    //3、构造方法能够添加参数

    publicPerson(stringname,intage){

    //前面name是字段name,后面name是参数name

    //初始化成员变量

    this.name=name;

    this.age=age;

    Console.WriteLine("构造");

    }

    //4、构造方法允许重载

    privatePerson(){

    name="lanou";

    age=16;

    }

    //5、如果没有类添加构造方法,系统会提供一个默认构造

    //6、如果我们将某个构造方法设为私有的,就不允许再通过这个构造创建对象

    //默认构造

    //publicPerson(){

    //}

    //析构方法——在对象销毁时调用,用来释放内存的

    //1、每个类只能由一个析构方法

    //2、析构方法不能有返回值

    //3、析构函数不能有访问权限修饰符

    //4、析构函数不能带有参数,更不能重载

    //5、析构函数由系统自动调用,不能手动调用

    ~Person(){

    Console.WriteLine("析构");

    }

    }

    classMainClass

    {

    publicstaticvoidMain(string[]args)

    {

    //使用new关键字创建对象的时候,就已经调用了构造方法

    //Personp=newPerson();

    Personp1=newPerson("老王",18);

    Console.WriteLine("主函数结束,程序准备退出");

    //Console.WriteLine(p.name);

    //Console.WriteLine(p1.name);

    }

    }

    }

    相关文章

      网友评论

          本文标题:【蓝鸥AR/VR开发基础二】 构造和析构

          本文链接:https://www.haomeiwen.com/subject/ihmsettx.html