In the B
class I concealed (override) static method foo()
from A
class.
So why
A object = new B();
object.foo();
outputs 'A', but not 'B'?
public class Test1
{
public static void main(String[] args)
{
A object = new B();
object.foo();
}
}
class A
{
public static void foo()
{
System.out.println("A");
}
}
class B extends A
{
public static void foo()
{
System.out.println("B");
}
}