super关键字
当父类和子类有同名属性时,或者子类想调用父类的属性,使用super.父类属性
当子类方法中想调用父类的方法,super.父类方法
在构造器中
第一行有隐藏的 super 用来调用父类的构造器,加载父类的属性和方法到内存中。
注意:
super 必须在构造方法的第一行
总结:
super 就是代表父类
- super.属性(父类属性)
- super.方法(父类方法)在方法中使用
- super( )(父类构造器)在构造器里使用 必须在第一行
1 Test.java 2 3 public class Test { 4 5 public static void main(String[] args) { 6 Zi zi = new Zi("王五"); 7 zi.method(); 8 9 } 10 11 } 12 13 class Fu{ 14 String name="张三"; 15 16 void duanxin(){ 17 System.out.println("发送短信"); 18 } 19 Fu(){//父类空参构造器 20 21 System.out.println("父类空参构造器"); 22 } 23 Fu(String n){//父类有参构造器构造器 24 name = n; 25 System.out.println("父类有参构造器"); 26 } 27 28 } 29 30 class Zi extends Fu{ 31 32 String name="张四"; 33 void method(){ 34 System.out.println(super.name+"是张四的父类"); 35 } 36 void duanxin(){ 37 super.duanxin(); 38 System.out.println("微信"); 39 } 40 Zi(){//空参构造器 41 super(); 42 System.out.println("子类空参构造器"); 43 44 } 45 Zi(String n){//有参构造器 46 super(n); 47 System.out.println("子类有参构造器"); 48 49 } 50 51 }