gpt4 book ai didi

java - 无法实例化内部类

转载 作者:行者123 更新时间:2023-12-01 18:05:25 25 4
gpt4 key购买 nike

这是我的代码:

public class A {
int age;

void Do() {
System.out.println("...");
}

class B extends A {
}

public static void main(String[] args) {
B b=new B();
}
}

错误:

new B();
为什么?为什么不对?

最佳答案

您将 B 声明为 A 的内部类,因此如果不提供封闭类 A 的实例,则无法实例化它.

您可以将 B 的定义移到 A 之外以使代码正常工作:

class B extends A
{

}

public class A
{
int age;

void Do()
{
System.out.println("...");
}

public static void main(String[]args)
{
B b = new B();
}
}

或者您可以保留类结构不变,但创建 A 的实例以便创建 B 的实例:

B b = new A().new B();

关于java - 无法实例化内部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36842912/

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