C#中的构造函数

时间:2021-09-22 03:21:06

在创建某个类时,由于对该对象的状态(数据)不是很明确,因此需要对其进行初始化。比如说我们要在长方形这个类中创建一个对象,或者说新建一个长方形,那么我们首先要确定他的长和宽,假如我们无法确定它的长和宽,那么我们是无法造出一个长方形来的。所以就要使用这个长方形类中一个用来构造该类所有对象的函数——构造函数。由于该函数要在创建一个新对象时使用,因此它不肯能存在于对象之后,那么我们就必须在类中对它进行声明和定义。

如果有一个名称是MyClass的类,其定义的构造函数框架如下:

[csharp]  

 

 

C#中的构造函数

C#中的构造函数

<span style="font-family:Microsoft YaHei;font-size:18px;">public class MyClass  

{  

    public MyClass()  

    {  

  

    }  

}</span>  

下面就拿计算长方形的面积来举例吧:

首先,声明一个rectangle类:

[csharp]  

 

 

C#中的构造函数

C#中的构造函数

<span style="font-family:Microsoft YaHei;font-size:18px;">class rectangle  

    {  

        public rectangle(int w, int h)  //构造函数的声明  

        {  

            width = w;  

            high = h;  

        }  

        public int area()  

        {  

            return width * high;  

        }  

        private int width;  

        private int high;  

    }</span>  


    其次,,将类实例化为A,完成初始化。

[csharp]  

 

 

C#中的构造函数

C#中的构造函数

<span style="font-family:Microsoft YaHei;font-size:18px;"> Program  

    {  

        static void Main(string[] args)  

        {  

            rectangle A = new rectangle(3,4);    //创建对象A时执行了初始化  

            Console.WriteLine("长方形的面积为{0}",A.area());  

        }  

    }</span>  

最后,要注意的是, 构造函数没有返回值,而且一个类可以有多个构造函数。使用有参数的构造函数时,需要自己写一个空参数的构造函数。