日期:2014-05-17 浏览次数:21154 次
一、对象的初始化
VB中我们定义变量时,给变量分配一定的空间,但并没有要求对变量进行初始化。
对象定义时就不同了。对象是类的实例化,是确实存在的实体,一旦建立了对象不但要为其分配内存控件,而且要保证对象的所有属性有确定的意义。也就是在创建对象时(new)就进行初始化。
1、建立类
 class Student
        {
            private string _no;
            private int _age;
            public string StudentNo
            {
                get { return _no; }
                set { _no= value; }
            }
 
            public int StudentAge
            {
                get { return _age; }
                set { _age= value; }
            }
        }       
2、实例化对象
 private void button1_Click(object sender,EventArgs e)
        {
            Student zhang = new Student();                //创建对象,也初始化构造函数
            //以下其实是使用了类的编译器set
            zhang.StudentNo ="000001";
            zhang.StudentAge = 16;
            //显示对象的内容,其实是使用了类的读取器get
            label1.Text= zhang.StudentNo +zhang.StudentAge;
        }
注意:get{}和set{}为访问器。get为读取,set为编写。只读取数据用get;相反则用set。其中set中的“value”为用户赋给成员的值。
二、什么是构造函数和析构函数?怎样去用它们?
1、构造函数
(1)定义:是一种特殊的成员函数,它主要用于为对象分配空间,进行初始化。
(2)特性:
(3)实例
class Cat()                                           //声明Cat类
  {
      public string name;                         //成员变量
      public Cat(stringname)                 //利用构造函数为初始的Cat赋初值
      {
           this.name=name;                    //进行赋值
        }
   }
2、析构函数
(1)定义:如同构造函数可以自动进行对象属性的初始化一样,C#也会自动调用一个函数注销该对象并进行资源的释放与清理工作,这个工作就即析构函数。
(2)特性:
(3)实例
  class Cat()
  {
      ……
    ~ Cat()   
       {
            console.WriteLine();
        }
   }
注意:
三种情况调用析构:
对象注销时,会自动调用析构函数
对象定义在一个函数体,函数运行结束时,自动撤销对象,析构函数也被自动调用。
若对象由new动态创建,在用delete释放它时,其析构函数被自动调用(若不用delete释放,则系统不会调用析构函数)