Rumah > Java > Javabermula > java中super关键字有什么用法

java中super关键字有什么用法

王林
Lepaskan: 2020-08-26 15:26:37
ke hadapan
2156 orang telah melayarinya

java中super关键字有什么用法

Java中在执行子类的构造方法之前或者子类没有明确指定构造方法,会自动调用父类的无参构造方法。

(视频教程推荐:java课程

super的三种使用情况:

访问父类方法中被覆盖的方法。

调用父类构造方法。

访问父类中的隐藏成员变量。

示例代码:

class A{
	int a;
	A(){
		a = 3;
		System.out.println(a);
	}
	void dosomething(){
		System.out.println("A");
	}
}
class B extends A{
	int a;
	B(){
		a = 5;
		System.out.println(a);
	}
	void dosomething(){
		super.dosomething();
		System.out.println("B");
	}
}
Salin selepas log masuk

(推荐教程:java入门教程

当在main方法中执行

B b = new B();
b.dosomething();
Salin selepas log masuk

输出结果:

3
5
A
B
Salin selepas log masuk

父类中的构造方法不能被子类继承,子类只能使用自己的构造方法或者默认的无参构造方法。

父类定义有参构造方法时,子类定义无参的构造方法的时候编译器自动添加super()会出现报错。(父类没有与之对应的无参构造方法)

Atas ialah kandungan terperinci java中super关键字有什么用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan