gpt4 book ai didi

java - 抽象、扩展和创建实例问题

转载 作者:行者123 更新时间:2023-12-01 21:40:28 28 4
gpt4 key购买 nike

Klasse1是一个抽象类,有一个 foo()方法。 Klasse2延伸Klasse1并有一个doo()方法,但不要覆盖 foo()方法。

为什么我无法调用doo() Tester中的方法类?

Klasse1.java

public abstract class Klasse1 {
public void foo() {
System.out.println("Klasse1");
}
}

Klasse2.java

public class Klasse2 extends Klasse1 {
public void doo() {
System.out.println("Klasse2");
}
}

Tester.java

public class Tester {
public static void main(String[] args) {
Klasse1 k;
k = new Klasse2();
k.foo();
k.doo(); // doesn't work
}
}

最佳答案

在编译时,Java 编译器检查引用类型而不是实例类型。

在本例中,引用类型是 Klasse1,它没有 doo()。因此它会抛出错误。

关于java - 抽象、扩展和创建实例问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36527348/

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