gpt4 book ai didi

java - 想知道以下 Java 程序的输出

转载 作者:行者123 更新时间:2023-11-30 07:57:17 25 4
gpt4 key购买 nike

我正在处理一些过去的试卷,在这里我不确定输出结果。我想我不清楚 extends 和 super。

public class Superclass{
public boolean aVariable;

public void aMethod(){
aVariable = true;
}
}

class Subclass extends Superclass {
public boolean aVariable;

public void aMethod() {
aVariable = false;
super.aMethod();
System.out.println(aVariable);
System.out.println(super.aVariable);
}
}

我认为第二个输出是正确的,因为它会引用父类(super class)并且它是一个对象。但是,我不确定第一个输出。它只是一个值并打印 false 还是它也是一个对象?

最佳答案

输出将是:

false
true

因为在你的 Subclass aVariable 默认情况下是 false (所以赋值 aVariable = false; 是不必要的) .阅读更多关于 Primitive Data Types default values 的信息.
Superclass 中,您通过使用关键字 super 调用父类(super class)的方法将 aVariable 初始化为 true: super.aMethod();。阅读更多关于 Accessing Superclass Members 的信息.

看看demo .

关于java - 想知道以下 Java 程序的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41485421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com