抽象类错误显示

时间:2014-07-20 15:43:16

标签: abstract-class

CODE:
abstract class A
{
abstract void disp();
}
class B extends A
{
void disp()
{
System.out.println("from A");
}
void display()
{
System.out.println("Hello B");
}
}
class C extends A
{
void disp()
{
System.out.println("Hello C");
}
}
class Cls4
{
public static void main(String ar[])
{
A ob;
ob=new B();
ob.disp();
B ob1=new B();
ob1.display();
ob=new C();
ob.disp();
}
}

这给出了错误:

Cls4.java:30: error: cannot find symbol
ob.display();
  ^
  symbol:   method display()
  location: variable ob of type A
1 error

我已经在B级声明了显示并定义了!!

为什么java无法找到呢?

1 个答案:

答案 0 :(得分:0)

您的变量ob具有静态类型A,而A类没有display() - 方法。