关键字super在java中的主要作用是什么,如何使用
发布时间:2025-05-21 14:44:53 发布人:远客网络
一、关键字super在java中的主要作用是什么,如何使用
1、对于有继承关系的类,子类可以通过这个关键字调用父类中的方法。至于理解如下:
2、此句话的意思是调用父类中的方法query()[当然这个方法不可以使private类型],在你理解的时候,你看到super你可以把它看成是B方法的实例。即
3、B b= new B();然后b.qurey()
4、至于原理,就像上一位解释的,当你new A()时,实例化的顺序是先实例化父类,再实例化子类的,所以继承的类都是这样的。这应该也是子类为什么可以调用父类的方法的原因。
5、在同一个类中用super关键字,调用其它构造函数,他一般也是在构造方法中,为了避免代码重复,直接调用已经写过的代码,你要注意的是他的写法,即 super(构造方法名),而且必须是这个构造方法的第一句。
二、JAVA中super的作用
super可作用是向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。
与this类似,super相当于是指向当前对象的父类,这样就可以用super.xxx来引用父类的成员。
2、子类中的成员变量或方法与父类中的成员变量或方法同名。
super(参数):调用父类中的某一个构造函数(应该为构造函数中的第一条语句)。
this(参数):调用本类中另一种形式的构造函数(应该为构造函数中的第一条语句)。
super.value();//调用父类的方法
System.out.println(super.name);
public static void main(String[] args){
三、关键字super的作用是
1、(1)访问父类的构造函数:可以使用super0函数访问父类的构造函数,从而委托父类完成一些初始化的工作。
2、(2)访问父类的成员:如果子类重写了父类的某个方法,可以通过使用super关键字来引用父类的方法实现。
3、(3)this和super不能同时出现在一个构造函数里面,因为this必然会调用其它的构造函数,其它的构造函数必然也会有super语句的存在,所以在同一个构造函数里面有相同的语句,就失去了语句的意义,编译器也不会通过。
4、总结:super可用于引用直接父类实例变量。super可用于调用直接父类方法。super()可用于调用直接父类构造函数;在Java中代表当前对象的直接父类对象的引用。
5、在同一个类中用super关键字,调用其它构造函数,他一般也是在构造方法中,为了避免代码重复,直接调用已经写过的代码,你要注意的是他的写法,即super(构造方法名),而且必须是这个构造方法的第一句。