class Base {
Base() { System.out .println ("Base: Base"); }
void print() { System.out .println ("Base: print"); }
static void staticPrint() { System.out .println ("Base: staticPrint"); }
}
class Derived extends Base {
Derived() {System.out .println ("Derived: Derived"); }
void print() {System.out .println ("Derived: print"); }
static void staticPrint() {System.out .println ("Derived: staticPrint"); }
}
public class Main {
public static void main (String[] args) {
Base base = new Base();
base.print();
Derived derived = new Derived();
derived .print();
Base derivedInBaseVariable = new Derived();
derivedInBaseVariable.print();
Base.staticPrint();
Derived.staticPrint();
}
}
Base: Base
Base: print
Base: Base
Derived: Derived
Derived: print
Base: Base
Derived: Derived
Derived: print
Base: staticPrint
Derived: staticPrint