コンストラクタ・デストラクタ

コンストラクタはクラス名と同名のものを使用

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication29
{
    class Program
    {
        static void Main(string[] args)
        {
            Test2 a;
            a = new Test2();
            a.testFunc1();
 
            a = new Test2("aaa", "bbb");
            a.testFunc1();
 
            Console.ReadKey();
 
        }
    }
 
    public class Test2
    {
        /**
         * コンストラクタ定義
         **/
        public Test2()
        {
            Console.WriteLine("コンストラクタ:引数なし");
        }
 
        /**
         * コンストラクタ定義:引数指定
         **/
        public Test2(string a, string b)
        {
            Console.WriteLine("コンストラクタ:a = {0}, b = {1}", a, b);
        }
 
        /**
         * テストメソッド
         **/
        public void testFunc1(){
            Console.WriteLine("テストメソッド");
        }
 
    }
 
}
 
 
 

デストラクタは~をクラス名の前付加

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication30
{
    class Program
    {
        static void Main(string[] args)
        {
            Test3 a;
            a = new Test3();
            a.testFunct();
 
            Console.ReadKey();
        }
    }
 
    class Test3
    {
        /**
         * コンストラクタ
         **/ 
        public Test3()
        {
            Console.WriteLine("コンストラクタ");
        }
 
        /**
         * デストラクタ
         **/
        ~Test3()
        {
            Console.WriteLine("デストラクタ");
        }
 
        /**
         * テストメソッド
         **/
        public void testFunct()
        {
            Console.WriteLine("テストメソッド");
        }
    }
}
 
 
デストラクタはプログラムの終了直前、または指定のクラスが解放されるときに呼び出される


最終更新:2011年04月09日 23:19