关闭

蓝鸥Unity开发基础——构造方法

标签: CSDN学院unityunity3d宋晓波蓝鸥
115人阅读 评论(0) 收藏 举报
分类:

蓝鸥Unity开发基础——构造和析构

一、构造和析构

构造方法

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

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

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

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

如果将构造方法设置为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,就不能给你再使用此构造创建实例

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

 


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    蓝鸥技术交流方式方式
    QQ:3296620586 QQ群:263259689
    蓝鸥Unity3D学习路线图
    unity3D-游戏 AR VR在线就业班 C#入门【免费】 http://edu.csdn.net/course/detail/1982

     

    unity3D-游戏 AR VR在线就业班 C#入门(二)【免费】 http://edu.csdn.net/course/detail/2050

     

    unity3D-游戏 AR VR在线就业班 unity引擎【免费】 http://edu.csdn.net/course/detail/2121

     

    Unity3D-游戏ARVR进阶课程 - 动画系统【收费】 http://edu.csdn.net/course/detail/2622

     

    Unity3D高级课程-有限状态机【收费】 http://edu.csdn.net/course/detail/2427
    个人资料
    • 访问:34917次
    • 积分:1182
    • 等级:
    • 排名:千里之外
    • 原创:84篇
    • 转载:16篇
    • 译文:0篇
    • 评论:11条
    文章分类