view plaincopy to clipboardprint?
public class SuperClass {
public SuperClass() {
System.out.println("super class constructed.");
}
public SuperClass(String name) {
System.out.println("super class constructed with name: " + name);
}
}
public class SuperClass {
public SuperClass() {
System.out.println("super class constructed.");
}
public SuperClass(String name) {
System.out.println("super class constructed with name: " + name);
}
}
子类:
view plaincopy to clipboardprint?
public class SubClass extends SuperClass {
public SubClass() {
System.out.println("sub class constructed.");
}
public SubClass(String name) {
super(name);
System.out.println("sub class constructed with name: " + name);
}
public static void main(String[] args) {
new SubClass();
new SubClass("world");
}
}
public class SubClass extends SuperClass {
public SubClass() {
System.out.println("sub class constructed.");
}
public SubClass(String name) {
super(name);
System.out.println("sub class constructed with name: " + name);
}
public static void main(String[] args) {
new SubClass();
new SubClass("world");
}
}作者: 吴立杰 时间: 2012-7-25 22:05
更正楼主的一个理解性的错误:
如果父类有多个构造函数,那么 Java 会选择哪一个?他会根据你子类构造中的设置而定
如果你子类是默认的super();那么默认空参构造,如果你写super(带参构造);那么就会直接去找父类的带参构造。