java构造器 笔记

基类的构造器总是在导出类的构造过程中被调用,而且按照继承层次逐层向上链接,使每个基类构造器得到调用。这样做是有意义的,因为 构造器具有一项特殊任务:检查对象是否被正确地构造 。导出类只能访问它自己的成员,不能访问基类中的成员(基类成员通常是private类型)。只有基类构造器才有恰当的权利来对自己的成员初始化。因此,必须让所有的构造器都得到调用,否则就不可能正确构造完整对象。这正式编译器为什么强制要求每个导出类必须调用构造器的原因。在导出类的构造主体中,如果没有明确指定调用哪个基类构造器,它就会“默默地”调用默认构造器。如果不存在默认构造器,编译器就会报错(若某个类没有构造器,编译器会自动合成出一个默认无参构造器)。

猜你喜欢

转载自blog.csdn.net/u011580177/article/details/46840329