Вызов метода при динамическом связывании

Рейтинг: 0Ответов: 1Опубликовано: 05.04.2015
class A
{
    public void show()
    {
        print("A");
    }
}

class B extends A
{
    public void show()
    {
        print("B");
    }
}

class C
{
    main()
    {
        A a = new B();
        a.show(); // вызывается метод show из класса B, но нужен из класса A
    }
}

Ответы

▲ 1
class C
{
      main()
      {
            A a = new A();
            a.show(); // вызывается метод show из класса B, но нужен из клсса A
      }
}

фокус-покус. вызывается то что тебе нужно. Ещё варианты:

  • используй слово super в классе B

  • используй статический метод в классе А. статик методы не переопределяются