请问这个输出结果是什么

img

img

这都不会吗兄der~免费的基础教学笔记了解一下 保姆教你学Java 不要钱还好看,尝尝怕啥。

问题涉及到创建对象的过程和构造方法的调用:

  1. 主函数创建了B的对象,但是B还继承了A
  2. 那就应该先去创建A的对象,那具体用哪个构造函数呢?每个子类构造函数都会调用父类无参的,所以应该是A的无参构造
  3. A的无参调用了自己的有参构造,那就先去执行A的有参构造。这里面赋值好像是个摆设,就是个干扰就不看了
  4. 无参构造完了,也就是A的有参构造第一行跑完了,跑第二行再输出
  5. A的对象创建完了,回到B的无参构造第一行,第一行跑完跑第二行输出
  6. 结束,就酱。

结果为:

A:withparameter
A:without parameter
B:

写代码运行一下不就知道了吗