
总结:子类默认调用父类的无参构造方法。重写时,父类方法将被覆盖,不被调用,在子类中可以使用super.方法();可以实现
运行显示:
evente.x:55
evente.x:55
B.y:57
package com.addd; //若子类没有显示的调用父类的无参构造方法,将自动调用父类的无参构造方法
//若超类即父类没有无参构造方法,子类有没有显示调用,编译将不通过
public class Some {
public static int x = 54;
private int y = 2;
public int z; Some() {
x = x + 1;// 只对局部x操作
show();// 调用x的方法
} public void show() {
System.out.println("Some.x:" + x);
} public int getY() {
return y;
} } class evente extends Some {
public evente(int x) {
x = x + 5;
show();
} public void show() {
System.out.println("evente.x:" + x);
} public int getY() {
System.out.println("B.y:" + (super.getY() + x));
return super.getY() + x;
}
} 测试类:
package com.addd; public class Tod {
public static void main(String[] args) {
// Some s=new evente(33);
// int v= s.getY();
evente d = new evente(8);// 默认调用父类的无参构造方法
d.getY();// /55+2=57;
}
}