黑马程序员技术交流社区

标题: 关于构造函数,请前辈指导 [打印本页]

作者: panwenbo1990    时间: 2014-5-2 22:33
标题: 关于构造函数,请前辈指导
本帖最后由 panwenbo1990 于 2014-5-3 13:40 编辑

    构造函数是不是只有在函数需要初始化的时候才使用啊?我没发现其他情况下需要使用构造函数的啊,求前辈指导
作者: 小狸    时间: 2014-5-2 23:41
本帖最后由 小狸 于 2014-5-2 23:49 编辑

       不是函数,是类.
       在C#中构造函数实在创建给定类型的对象时执行的类方法.构造函数的是在对象的生命周期开始时调用的,与之对应的是析构函数(用来回收对象的资源).
        构造函数的特点:
        1.构造函数必须与类同名.
        2.构造函数可以有0个或多个参数.
        3.构造函数没有返回值
        4.构造函数总是伴随着new操作仪器调用
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;

  5. namespace 构造函数
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             Test t = new Test();
  12.             Console.WriteLine("Z的值为:"+t.z);
  13.             Console.ReadLine();              
  14.         }
  15.     }
  16.     class Test {
  17.         public int x = 2;
  18.         public int y = 3;
  19.         public int z = 0;
  20.         public Test() {
  21.             z = x + y;
  22.         }
  23.         
  24.     }
  25. }   
复制代码
        结果为:"z的值为5" . 在上面的例子中,对象分配内存后,new运算符立即调用了无参的构造函数Test() (默认--不为new提供任何参数时),所以我们可以看到最后的结果是 Z的值为5.
作者: czwanglei    时间: 2014-5-3 09:50
C语言中的函数其实就是C#中的方法,在C#中说构造方法更官方。构造方法是类实例化的时候,给变量赋值,好好理解,构造方法,默认构造方法。当对这些理解后,就会慢慢明白构造方法了。
作者: 蛤蟆太康    时间: 2014-5-3 16:06
    亲,构造函数不是给函数初始化的哦!它的主要作用是:完成“对象”的初始化工作,把定义对象时的参数传给对象的域。类初始化时构造函数的调用顺序是:
(1)初始化对象的存储空间为零或null值;
(2)调用父类构造函数;
(3)按顺序分别调用类成员变量和实例成员变量的初始化表达式;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2