gpt4 book ai didi

java - java中static指的是什么

转载 作者:行者123 更新时间:2023-12-02 12:00:55 27 4
gpt4 key购买 nike

相当生锈,但我很确定我从未见过这样编写的代码。这是java助理考试的模拟题,有人可以告诉我第10行中的“static”是否连接到go()方法吗?主要是为什么输出是 x y c g ???

public class testclass {

testclass() {
System.out.print("c ");
}

{
System.out.print("y ");
}

public static void main(String[] args) {
new testclass().go();
}

void go() {
System.out.print("g ");
}

static {
System.out.print("x ");
}

}

最佳答案

tell me whether the 'static' in line 10 is connected to the go() method??

它与 go 方法无关。它被称为静态初始化 block 。

why is the output is x y c g ???

以下是java中的执行顺序

  1. 在类加载时,将执行静态字段/初始化 block 。
  2. 在对象创建时,JVM 将字段设置为默认初始值(0、false、null)
  3. 调用对象的构造函数(但暂时不要执行构造函数的主体)
  4. 调用父类(super class)的构造函数
  5. 使用初始化器和初始化 block 初始化字段
  6. 执行构造函数的主体

关于java - java中static指的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23359791/

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