It says compile time error - cannot reference Q43.y until supertype constructor has been called I am not sure I understand the error... Can someone explain? Does it mean super() has to be called or that a base class should exist for this class
Praveen Kumar Mathaley
posted 14 years ago
According to jls, one cannot access instance variables in the calls to super constructors as still they are not intialized( follow the object creation thread flow.) in the given class the no argument constructor is calling the argument constructor, so still the super constructor has not been called yet at the line this(y) hence the compilation error that cannot reference y before call to supertype constructor.