2016Java面试题精编版—构造函数和析构函数
——动力节点java 面试题:下面哪个选项的说法是正确的?
A:构造函数不能被重载
B:构造函数不能被覆盖
C:一个构造函数可以返回一个私有的或一个对象的引用
D:构造函数代码执行时是从当前的类层级到它祖先的类
答案:B
问题解析:重载构造函数是一个主要的技术,可以允许多种方式初始化一个类。
通过定义,构造函数是没有返回值的。
所以选项C是错误的,这种说法并没有任何意义。
选项D 中构造函数代码的执行是从它最老的祖先类开始向下执行调用。
可以写一个继承一个基类的类来测试,当创建一个子类的时候,会发现它的祖先类的构造函数先被调用。