1:主要存在于子类方法中,用于指向子类对象中父类对象。
2:访问父类的属性
3:访问父类的函数
4:访问父类的构造函数
//super出现在继承了父类的子类中。有三种存在方式:
//第一种
super.xxx;(xxx为变量名或对象名)
//这种方法意义为,获取父类中的名字为xxx的变量或方法引用。
//使用这种方法可以直接访问父类中的变量或对象,进行修改赋值等操作
//第二种
super.xxx();(xxx为方法名)
//这种方法意义为,直接访问并调用父类中的方法。
//第三种
super();
//这种方法意义为,调用父类的初始化方法,其实就是调用父类中的public xxx()方法
super(参数1,参数2); //这种对应着父类中的有参构造方法
5.使用案例:
public class Demo1 {
public static void main(String[] args) {
SubClass_A sc=new SubClass_A(3);
System.out.println(sc.i);
System.out.println(sc.j);
}
}
class SuperClass_A
{
public int i=0;
public int j=0;
public SuperClass_A()
{
j=1;
}
}
class SubClass_A extends SuperClass_A
{
public int i;
SubClass_A(int b)
{
super();
i=b;
}
}
总结:
子类继承父类,子类便拥有了父类的属性和方法,父类中有很多构造器,super()在这里指定执行父类的无参构造方法来进行数据的初始化,子类无需再声明父类的属性,可直接调用方法,和super.xxx使用,super()其实就是子类调用了父类的无参构造方法而已