关于派生类调用父类构造函数的问题.
今天看了<<c#高级编程第四版>>,在派生类的构造函数这一小节中讲到了派生类中如何调用父类构造函数的问题.一个简单的继承,竟然报错,查了资料.也还是不清楚它的原理.书中的实例是:
父类:一个含有带参数的构造函数
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
派生类:没有构造函数.
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4
5 namespace TestConstructor
6 {
7 public class ChildClass:ParentClass
8 {
9 private string childName;
10 }
11 }
12
2 using System.Collections.Generic;
3 using System.Text;
4
5 namespace TestConstructor
6 {
7 public class ChildClass:ParentClass
8 {
9 private string childName;
10 }
11 }
12
我们知道,在一般的类中,如果没有构造函数,类就会自动提供默认的构造函数.但是我不明白.这样的继承结构会编译不通过.报错如下
子类会调用父类的构造函数??
请高手解答.为什么子类,父类一定要有相同类型的参数.比如无参或者个数相同??
请高手解答.