精确 调用始终
super()是多余的。它明确地在做否则会隐式地做的事情。这是因为如果你省略对超级构造函数的调用,则无论如何都将自动调用无参数的超级构造函数。并不是说这是不好的风格。有些人喜欢露骨。
但是,当超级构造函数采用你要从子类传递的参数时,它才变得有用。
public class Animal { private final String noise; protected Animal(String noise) { this.noise = noise; } public void makeNoise() { System.out.println(noise); }}public class Pig extends Animal { public Pig() { super("Oink"); }}


