java代码继承难点。构造方法的调用

总结:子类默认调用父类的无参构造方法。重写时,父类方法将被覆盖,不被调用,在子类中可以使用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;
	}
}

  

原文地址:https://www.cnblogs.com/langlove/p/3440063.html