Download the programs : OverrideTestSuper.java , OverrideTestSub.java , OverrideTest.java

OverrideTestSuper.java

   1:public class OverrideTestSuper {
   2:    public void method() {
   3:        System.out.println("I am method() in OverrideTestSuper.");
   4:    }
   5:    
   6:    public void method(int a) {
   7:        System.out.println("I am method(int) in OverrideTestSuper.");
   8:    }
   9:}
  10:
  11:

OverrideTestSub.java

   1:public class OverrideTestSub extends OverrideTestSuper {
   2:    public void method() {
   3:        System.out.println("I am method() in OverrideTestSub.");
   4:    }
   5:    
   6:    public int method(int a, String b) {
   7:        System.out.println("I am method(int, String) in OverrideTestSub.");
   8:        return 0;
   9:    }
  10:}

OverrideTest

   1:/* 
   2:After remove the illegal line, the output is
   3:I am method() in OverrideTestSuper.
   4:I am method(int) in OverrideTestSuper.
   5:I am method() in OverrideTestSub.
   6:I am method(int) in OverrideTestSuper.
   7:I am method(int, String) in OverrideTestSub.
   8:*/
   9:
  10:public class OverrideTest {
  11:    public static void main(String[] args) {
  12:        OverrideTestSuper sup = new OverrideTestSuper();
  13:        OverrideTestSub sub = new OverrideTestSub();
  14:        sup.method();
  15:        sup.method(1);
  16:        sup.method(1,"Hi"); // illegal
  17:        sub.method();
  18:        sub.method(1);
  19:        sub.method(2, "Hi"); 
  20:    }
  21:}