java继承中的构造函数

java继承中的构造函数,java,Java,为什么Aa中的this(10)不起作用?创建Ba类的对象时,首先调用Ba的默认构造函数,后者又调用Aa的默认构造函数,后者调用Aa的参数化构造函数。所以,我希望输出是 您好,硬件单元,您好,再见。为什么您希望在“硬件单元”之前打印“您好” 召唤 所以先打印“hw r u”,然后才打印“hello” 同样,“再见”在“hii”之前打印,因为 召唤 它会打印“再见”,只有在它返回后,才会打印“hii” 总结如下: public Ba(int x) { System.out.println("

为什么Aa中的this(10)不起作用?创建Ba类的对象时,首先调用Ba的默认构造函数,后者又调用Aa的默认构造函数,后者调用Aa的参数化构造函数。所以,我希望输出是 您好,硬件单元,您好,再见。

为什么您希望在“硬件单元”之前打印“您好”

召唤

所以先打印“hw r u”,然后才打印“hello”

同样,“再见”在“hii”之前打印,因为

召唤

它会打印“再见”,只有在它返回后,才会打印“hii”

总结如下:

public Ba(int x)
{
    System.out.println("bye");
}
召唤

哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个打印“hw r u”

然后public Aa()打印“hello”

然后公共Ba(INTX)打印“再见”

最后,public Ba()打印“hii”

为什么您希望在“hw r u”之前打印“hello”

召唤

所以先打印“hw r u”,然后才打印“hello”

同样,“再见”在“hii”之前打印,因为

召唤

它会打印“再见”,只有在它返回后,才会打印“hii”

总结如下:

public Ba(int x)
{
    System.out.println("bye");
}
召唤

哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个叫

public Ba()
public Ba(int x)
public Aa()
哪个打印“hw r u”

然后public Aa()打印“hello”

然后公共Ba(INTX)打印“再见”


最后,public Ba()打印“hii”

如果构造函数调用的第一行不是
super()
this()
,则插入
super()
。对于所需的输出,您需要以下内容

public Aa(int x)
我跑去拿了(按要求)


如果构造函数调用的第一行不是
super()
this()
,则插入
super()
。对于所需的输出,您需要以下内容

public Aa(int x)
我跑去拿了(按要求)


你得到的是哪种输出而不是预期的输出?据我所知,输出将是hw r u,你好,再见,hii,你得到的是哪种输出而不是预期的输出?据我所知,输出将是hw r u,你好,再见,hiiyeah,这就是我的实际意思(hw r u,你好,再见,hii)。但是我在eclipse中得到的输出只有三条语句,即我得到的输出是hello,hii,拜拜no hw r u@ravikiran我运行了代码,按照我提到的顺序得到了所有4个字符串。谢谢,这是eclipse的错误。我在cmd中得到了正确的结果。但是为什么呢?是的,这就是我真正的意思(你好,再见,你好)。但是我在eclipse中得到的输出只有三条语句,即我得到的输出是hello,hii,拜拜no hw r u@ravikiran我运行了代码,按照我提到的顺序得到了所有4个字符串。谢谢,这是eclipse的错误。我在cmd中得到了正确的结果。但是为什么呢?谢谢,我也是这么想的。但是我在eclipse中没有看到“硬件和硬件”。只打印了三份声明,而且顺序正确。输出是你好,再见,你好。为什么没有“HWRU”。谢谢,我也是这么想的。但是我在eclipse中没有得到“HWRU”。只打印了三份声明,而且顺序正确。输出是你好,再见,你好。为什么没有“hw r u”。