class ClassA {
    ClassA() {
        System.out.println("ClassA() ctor");
    }
}

class ClassB extends ClassA {
    ClassB() {
        System.out.println("ClassB() ctor");
    }

    ClassB(String str) {        
        System.out.println("In ClassB");
    }

}

class ClassC extends ClassB {
    ClassC(String str) {   
        super(str);                 // if this is commented out
                                    // the no-arg ClassB ctor
                                    // is implicitly called
        System.out.println(str);
    }
}

class TestCtor_1 {
    public static void main(String[] args) {
        ClassC c = new ClassC("Hello");
    }
  
}
