根据java 7提到我们可以使用基类创建派生类实例。 但 它不工作我试图实现这个概念 所以我在这里提到我的代码...... 请提供解决方案并解决问题.... 这是错误
class A
{
public void show()
{
System.out.println("A class");
}
}
class B extends A
{
public void display()
{
System.out.println("B class");
}
}
class Demo
{
public static void main(String args[])
{
B obj=new B();
obj.display();
}
}
答案 0 :(得分:0)
如果obj
的类型为B
,就像在您发布的代码中一样,它不会给您一个错误,因为B
包含方法display
。
但是,根据评论中的错误消息 - method display() location: variable obj of type A
- 实际代码可能是:
A obj=new B();
obj.display();
编译无法编译,因为编译器确定编译时类型obj
可以调用哪些方法,即A. A
没有显示方法,除非显示方法,否则无法调用您明确地将obj
投射到B
:
A obj=new B();
((B)obj).display();
答案 1 :(得分:0)
检查您的文件名。确保您的文件名是Demo.java ...因为当我编译并运行您的代码时,它可以工作。还要检查你的java路径。