方法的重写
- 定义
在子类中可以根据需要对父类中继承来的方法进行改造,也成为方法的重置、覆盖。在程序执行时,子类的方法将覆盖父类的方法。 - 要求
- 重写方法必须和被重写方法具有相同的方法名称、参数列表和返回值类型。
- 重写方法不能使用比被重写方法更严格的访问权限。
- 重写和被重写的方法须同时为static的,或同时为非static的。
- 子类方法抛出的异常不能大于父类被重写方法的异常。
四种访问权限修饰符
- Java权限修饰符public、protected、private置于类的成员定义前,用来限定对象对该类对象成员的访问权限。
- 对于class的权限修饰只可以用public和default
- public类可以在任意地方被访问
- default类只可以被统一包内部的类访问
- 举例
class Parent{
private int f1=1;
int f2=2;
protected int f3 =3;
public int f4=4;
private void fm1(){System.out.println("in fm1()f1="+f1);}
void fm2(System.out.println("in fm2()f2="+f2);}
protected void fm3(){System.out.println("in fm3()f3="+f3);}
public void fm4(){System.out.println("in fm4()f4="+f4);}
}
class Child extends Parent{
private int c1=21;
public int c2=22;
private void cm1(){System.out.println("in cm1()c1="+c1);}
public void cm2(){System.out.println("in cm2()c2="+c2);}
public static void main(String[]args){
int i;
Parent p new Parent();
i=p.f2;
p.fm2;
Child c=new Child();
i=c.f2;
i=c.c1;
c.cm1();
}
}
父类Parent和子类Child在同一包中定义时:
子类的对象可以调用的方法
版权声明:本文为qq_27150223原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。