c#中派生类的构造方法

  1.        在子类中调用父类的默认构造函数(无参)(会先调用父类的,然后是子类的),  在这里 :base()可以直接不写,因为默认会调用父类中的默认构造函数。
  2.       调用有参数的构造函数,同样是会先调用父类的,然后是子类的,但是,这里:base()不能省略了。
    class Enemy
    {
        int x;
        public Enemy()
        {
            Console.WriteLine("这是无参数enemy");
        }
        public Enemy (int x)
        {
            this.x = x;
            Console.WriteLine("这是有参数enemy");
        }
    }
    class Boss : Enemy
    {
        int y;
        public Boss()
        {
            Console.WriteLine("这是无参数boss");
        }
        public Boss (int x,int y):base(x)
        {
            this.y = y;
            Console.WriteLine("这是有参数boss");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Boss boss1 = new Boss();

            Console.WriteLine("--------------");

            Boss boss2 = new Boss(1, 2);

            Console.ReadKey();
        }
    }

猜你喜欢

转载自blog.csdn.net/qq_40323256/article/details/82976150