我们已经简单的了解到继承,那么如果子类现在定义了与父类相同的属性和方法的时候,那么这样的操作就是覆写
方法的覆写:指的是子类定义了父类方法名称类型和个数相同的方法,以及完全相同的方法,但是覆写的方法不能拥有比父类更为严格的访问控制的权限,
范例:简单的方法覆写
1 class Person{ 2 public void printInfo(){ 3 System.out.println("1"); 4 } 5 } 6 class Student extends Person{//现在的Person出现了一个子类 7 //在你们编写的开发中。99%的情况下,子类的方法名称和父类的方法名称是完全一样的 8 public void printInfo(){ 9 System.out.println("2"); 10 } 11 } 12 public class Newbegin{ 13 public static void main(String args[]) { 14 Student stu=new Student(); 15 stu.printInfo(); 16 } 17 }
super()关键字
在子类对象的实例化对象,由子类调用父类的构造方法的时候才使用的
范例:观察一个程序
1 class Person{ 2 public void printInfo(){ 3 System.out.println("1"); 4 } 5 } 6 class Student extends Person{ 7 public void printInfo(){ 8 super.printInfo(); 9 System.out.println("2"); 10 } 11 } 12 public class Newbegin{ 13 public static void main(String args[]) { 14 Student stu=new Student(); 15 stu.printInfo(); 16 } 17 }
super是由子类调用父类的方法,而this是当前类中方法的调用,
范例:调用父类属性
1 class Person{ 2 public String info="www.csdn.com"; 3 } 4 class Student extends Person{ 5 public String info="www.gllh.com"; 6 public void printInfo(){ 7 System.out.println(super.info); 8 System.out.println(info); 9 } 10 } 11 public class Newbegin{ 12 public static void main(String args[]) { 13 Student stu=new Student(); 14 stu.printInfo(); 15 } 16 }
super和this用法相似,this是当前类的方法的当前对象,而super是访问父类的属性和方法的钥匙
子类覆写父类的方法是因为父类的方法功能不足,才需要覆写
方法覆写的时候用public 权限,就粘贴就完事了昂!