A method uses this to refer to the instance of the class that is executing the method. Static methods belong to the class as a whole, rather than to an instance. Constructors use this to refer to another constructor in the same class with a different parameter list. In the code, there are two constructors. The first takes a String input to name the instance.
Constructors use super to invoke the superclass's constructor.
The new Java programmer may stumble when the compiler automatically supplies code for constructors. In this case, the computer automatically inserts super . The sharp-eyed beginner may wonder how the above program can call the parent class's constructor when TestConstructor is not extending any class. The answer is that Java extends the Object class when you do not explicitly extend a class. A lawyer is reading the will of A. Class .