import java.util.*;
import java.lang.*;
import java.io.*;
class ClassA {
public void dispA(){
System.
out.
println("disp() method of ClassA"); }
}
class ClassB extends ClassA {
public void dispB(){
System.
out.
println("disp() method of ClassB"); }
}
class ClassC extends ClassA{
public void dispC(){
System.
out.
println("disp() method of ClassC"); }
}
class ClassD extends ClassA{
public void dispD(){
System.
out.
println("disp() method of ClassD"); }
}
class HierarchicalInheritanceTest {
public static void main
(String args
[]){ ClassB b = new ClassB();
b.dispB();
b.dispA();
ClassC c = new ClassC();
c.dispC();
c.dispA();
ClassD d = new ClassD();
d.dispD();
d.dispA();
}
}
CgppbXBvcnQgamF2YS51dGlsLio7CmltcG9ydCBqYXZhLmxhbmcuKjsKaW1wb3J0IGphdmEuaW8uKjsKCmNsYXNzIENsYXNzQSB7CiAgICBwdWJsaWMgdm9pZCBkaXNwQSgpewogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiZGlzcCgpIG1ldGhvZCBvZiBDbGFzc0EiKTsKICAgIH0KfQpjbGFzcyBDbGFzc0IgZXh0ZW5kcyBDbGFzc0EgewogICAgcHVibGljIHZvaWQgZGlzcEIoKXsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImRpc3AoKSBtZXRob2Qgb2YgQ2xhc3NCIik7CiAgICB9Cn0KY2xhc3MgQ2xhc3NDIGV4dGVuZHMgQ2xhc3NBewogICAgcHVibGljIHZvaWQgZGlzcEMoKXsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImRpc3AoKSBtZXRob2Qgb2YgQ2xhc3NDIik7CiAgICB9Cn0KY2xhc3MgQ2xhc3NEIGV4dGVuZHMgQ2xhc3NBewogICAgcHVibGljIHZvaWQgZGlzcEQoKXsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImRpc3AoKSBtZXRob2Qgb2YgQ2xhc3NEIik7CiAgICB9Cn0KY2xhc3MgSGllcmFyY2hpY2FsSW5oZXJpdGFuY2VUZXN0IHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBhcmdzW10pewogICAgICAgICBDbGFzc0IgYiA9IG5ldyBDbGFzc0IoKTsKICAgICAgICAgYi5kaXNwQigpOwogICAgICAgICBiLmRpc3BBKCk7CiAgICAgICAgIENsYXNzQyBjID0gbmV3IENsYXNzQygpOwogICAgICAgICBjLmRpc3BDKCk7CiAgICAgICAgIGMuZGlzcEEoKTsKICAgICAgICAgQ2xhc3NEIGQgPSBuZXcgQ2xhc3NEKCk7CiAgICAgICAgIGQuZGlzcEQoKTsKICAgICAgICAgZC5kaXNwQSgpOwogICAgfQp9