Super w tym przypadku to wywołanie konstruktora klasy - rodzica. This zostało umieszczone po to, aby uniknąć konfliktu nazw, jeśli zapisałbyś to wyrażenie bez jawnego this to otrzymałbyś błąd kompilacji.
// w tym przypadku this jest obowiązkowe aby uniknąć konfliktu nazw
this.something = something;
// a w tym nie musimy go używać, lecz jest to opcjonalne
something = value;
this.something = value;
a tu masz przykład z super
class ParentClass {
public ParentClass(String arg) {
System.out.println(arg);
}
}
class ChildClass extends ParentClass {
public ChildClass() {
super("HELLO SUPER");
}
}
public class sample {
public static void main(String [] args) {
// wypisze "HELLO SUPER" przy utworzeniu obiektu
ChildClass child = new ChildClass();
}
}