继承代码执行的顺序:
package com.dasenlin.ext;
public class Car {
private int site =4;
public Car() {
super();
System.out.println(site);
}
public void setSite(int site){
this.site=site;
}
void print(){
System.out.println(site);
}
}
package com.dasenlin.ext;
public class Bus extends Car {
public Bus(int site) {
super.setSite(site);
}
}
package com.dasenlin.ext;
public class Test {
public static void main(String[] args) {
Bus bus = new Bus(20);
bus.print();
}
}
执行的顺序:用bus的构造方法实例化bus的时候,bus继承了car,会调用car的构造方法,输出car的构造方法的打印,然后在bus中调用了car的setSite()方法,将20赋值给site,所以再次调用bus实例的时候,输出20,所以得到的结果就是4,20