Lendo logo no capítulo 2 do Livro Killer bla bla bla do O reilly. Me deparei com algumas dúvidas mas já achei no google a resposta.
Pesquisando sobre a palavra “super” achei o artigo da sun
[list]http://download.oracle.com/javase/tutorial/java/IandI/super.html[/list]
[quote]If your method overrides one of its superclass’s methods, you can invoke the overridden method through the use of the keyword super. You can also use super to refer to a hidden field (although hiding fields is discouraged). Consider this class, Superclass:
[code]public class Superclass {
public void printMethod() {
System.out.println("Printed in Superclass.");
}
}[/code]
Here is a subclass, called Subclass, that overrides printMethod():
public class Subclass extends Superclass {
[code]
public class Subclass extends Superclass {
public void printMethod() { //overrides printMethod in Superclass
super.printMethod();
System.out.println("Printed in Subclass");
}
public static void main(String[] args) {
Subclass s = new Subclass();
s.printMethod();
}
}[/code]
}[/quote]
Agora, qual a diferença de eu fazer o código acima e fazer o código abaixo?
[code]public class Superclass {
public void printMethod() {
System.out.println(“Superclass”);
}
}
///////////
public class Subclass extends Superclass {
public void printMethod() {
System.out.println(“Subclass”);
}
public static void main(String[] args) {
Subclass sb = new Subclass();
sb.printMethod();
}
}[/code]
O Super pra mim não fez diferença