        // Demonstrate the static methods are not overridden in
        // sub classes.
class StaticOverrideMain {
    public static void main(String[] args){
        // The parent class.
        StaticSuper parent = new StaticSuper();
        parent.method();
        // Use a parent type variable with an object of the child class.
        parent = new StaticSub();
        parent.method();
        // Use a child type variable with an object of the child class.
        StaticSub child = new StaticSub();
        child.method();
    }
}

class StaticSuper {
    public static void method(){
        System.out.println("super class version");
    }
}

class StaticSub extends StaticSuper {
        // This does not override the super class version.
    public static void method(){
        System.out.println("sub class version");
    }
}
