class A {
protected int method1(int a, int b) { return 0; }
}
public class B extends A{
public int method1(int a, int b) { return 0; } //正确,重写父类方法,可以扩大访问权限
//private int method1(int a, int b) { return 0; } //错误,重写父类方法,不能降低了访问权限
//private long method1(int a, int b) { return 0; } //错误,重写父类方法,不能改变返回值类型
public short method1(int a, long b) { return 0; }//正确,重载自身的方法,可以有不同的访问权限和返回值类型
private int method1(int a, long b) { return 0; }//正确,重载自身的方法,可以有不同的访问权限和返回值类型
}
以上这些看过之后相信你会理解,呵呵,楼主没有抓住重载与覆盖的真正内涵作者: 黑夜里的白猫 时间: 2013-5-23 10:02
SOAR 发表于 2013-5-23 09:09
当子类继承了父类以后,就默认继承了父类的public类型的方法,所以说你现在的子类中就有了这个方法public v ...
这是我自己理解的
Zi z=new Zi();
z.show();//通过,fu lei show;
z.show(2);//通过,zi lei zhong show(x)2;
Fu fu = new Fu()
fu.show(2);//这个失败,父类中没有这个方法