java类继承后变量覆盖后值的获取

本文通过一个具体的Java示例展示了类B如何继承类A,并在子类中使用super关键字来明确地引用父类中的成员变量。同时介绍了当子类与父类存在同名属性时,如何区分调用本类与父类的属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

类B继承类A,均有同名属性a,B继承后调用a属性,直接调用则是本类中的a,通过super调用则是父类中的a

package maoqq.test;

public class MyExtendsTest {

	public static void main(String[] args) {
		B b=new B();
		b.setA(7);
		b.s();
	}
}
class A{
	protected int a=5;
	public void s(){
		System.out.println(a);
	}
}
class B extends A{
	protected int a =6;
	public void setA(int a)
	{
		super.a=a;//修改父类中的a
//		this.a=a;//修改本类中的a
	}
	public void s(){
		super.s();
		System.out.println(a);
	}
}

输出结果:

7

6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值