方法的覆写
在继承的关系中也存在着方法覆写的概念,所谓的方法覆写就是指子类定义了与父类中同名的方法,但是在方法覆写时必须考虑到权限,即被子类覆写的方法不能拥有比父类方法更加严格的访问权限。
提示:关于权限
private< default<public
例子:
package test2; class Person { void print() { System.out.println("Person ---->void print(){}"); } } class Student extends Person { public void print() { System.out.println("student-----> void print(){}"); } } public class OverrideDemo1 { public static void main(String args[]) { new Student().print(); } }
结果:
student-----> void print(){}
如果现在要在ilei的方法中访问父类的方法,则使用super关键字即可,代码如下所示
package test2; class Person { void print() { System.out.println("Person ---->void print(){}"); } } class Student extends Person { public void print() { super.print();//调用父类中的print()方法 System.out.println("student-----> void print(){}"); } } public class OverrideDemo1 { public static void main(String args[]) { new Student().print(); } }
结果:
Person ---->void print(){}
student-----> void print(){}
从程序可以看出,在子类中直接通过“super.方法()”形式可访问父类的相关方法
与方法覆写概念相同的还有另一个成为属性的覆盖