为什么在创建子类的对象时会调用基类和派生类构造函数

时间:2016-03-14 08:41:08

标签: c# c#-4.0

Code : 
   class A
    {
        public A()
        {

        }

    }

    class B : A
    {
        public B()
        {

        }
    }

    class C : B
    {
        public C()
        {

        }
     }
Main()
{
C a =new C();
}

在创建新对象C时,首先调用类A构造函数,然后调用类B构造函数,最后调用类C构造函数。假设我不想在子C中使用A类的任何变量。为什么要调用基类构造函数?

1 个答案:

答案 0 :(得分:1)

正在调用您的基类构造函数,因为您从基类派生了子类。根据定义,子类继承其基类的成员变量和函数。您应该阅读有关面向对象的继承如何工作的更多信息。

让我们举个例子。在你的计划中说你正在与人打交道。您可以使用构造函数和成员变量名称,年龄和性别创建一个人员类。您可以根据需要将其实例化为多个人。

然后,您需要在程序中使用更多功能,并创建两个新类,一个用于学生,一个用于Employees。

对于学生,您需要姓名,年龄,性别,年级,专业和年份以及您希望姓名,年龄,性别,职位,工资的员工。

两个新课程:学生和员工来自Person课程,因为他们需要姓名,年龄和性别。

如果您不希望C类创建它的基类,那么您需要做的就是没有C类继承B类。

Google上有关于派生类及其工作原理的大量信息。 https://www.google.ca/?gws_rd=ssl#q=inheritance+in+object+oriented+programming