C# 构造函数和析构函数

构造函数

构造函数包括静态和非静态函数,静态函数会先一步执行

静态构造函数——》非静态构造函数

静态构造函数的特性

  • 静态构造函数中不允许出现访问修饰符
  • 静态构造函数必须无参
  • 静态构造函数执行的时间无法控制(在你第一次用到类,或者实例他的时候,他会自动调用)

构造函数的作用

  • 构造函数是用来初始化的时候给对象赋值的
  • 每个类都默认带一个无参数的构造函数
  • 构造函数可以重载

构造函数实例

public class TestA{

    public int id;

    public string message;

    static TestA(){
        //静态构造函数
    }

    public TestA(){
        //无参构造函数
    }

    public TestA(int p_id){
        id = p_id;
    }

    public TestA(int p_id, string p_message){
        id = p_id;
        message = p_message;
    }
}

public class TestB{

    public void Run(){

        TestA a = new TestA();//调用无参构造函数

        TestA b = new TestA(100);//调用带一个参数的构造函数
        
        TestA c = new TestA(101,"测试");//调用带两个参数的构造函数
    }
}

析构函数

析构函数是销毁对象,释放对象的,而且也不由我们主动调用,是GC垃圾回收器来调用的

  • 我们不能主动去调用析构函数

析构函数实例

public class Test{

    ~Test (){
    }
}

 

你可能感兴趣的:(#,C#函数)