gpt4 book ai didi

java - 创建对象时声明方法

转载 作者:IT老高 更新时间:2023-10-28 21:07:25 24 4
gpt4 key购买 nike

为什么第一种方式正确,而第二种方式不正确?


第一种方式:

new Object() {
public void a() {
/*code*/
}
}.a();

第二种方式:

Object object = new Object() {
public void a() {
/*code*/
}
};

object.a();

我在哪里可以找到有关它的更多信息?

最佳答案

java.lang.Object没有声明 a 方法 (2),而 the class instance creation expression 返回的匿名类new Object() { public void a() {} } 执行 (1)。

使用 Java 10 的 local variable type inference (var) 使第二个选项与第一个选项一样有效。

var object = new Object() {
public void a() {}
};
object.a();

关于java - 创建对象时声明方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53960664/

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