class Base{ int i = 47; private int f(){ System.out.println("Base f()"); System.out.println(this); return i ; } int g(){ System.out.println("Base g()"); System.out.println(this); // this Derived@... return f() ; } int k(){ return i ; } } class Derived extends Base { int i = 27; int f(){ return i ; } } public class Test{ public static void main(String[] args){ Base d = new Derived(); System.out.println(d); //Derived@.. System.out.println(d.k()); // print 47 System.out.println(d.g()); // print 47; } }