java中的关键字super

super表示当前对象的父类对象的一个引用

下面简单说下super的几个应用

super可以调用当前对象的父类对象的方法

class cam0
{
	double size=10;
	void printsize()
	{
		System.out.println(size);
	}
}
class cam1 extends cam0
{
	double size=20;
	void printsize()
	{
		System.out.println(size);
		System.out.println(super.size);
		super.printsize();
	}
}
public class cam2
{
	public static void main(String args[])
	{
		cam1 m=new cam1();
		m.printsize();
	}
}

输出为

20.0

10.0

10.0

super调用m的父类cam0的成员和方法


super可以调用当前对象的父类对象的构造函数

注意: 子类调用父类的构造方法时,super语句必须是子类构造方法的第一句

class cam0
{
	public cam0(int a,int b)
	{
		System.out.println("CS");
	}
}
class cam1 extends cam0
{
	public cam1()
	{
		super(1,1);
		System.out.println("bbb");
	}
	public cam1(int a)
	{
		super(1,1);
		System.out.println("ccc");
	}
}
public class cam2
{
	public static void main(String args[])
	{
		cam1 a=new cam1();
		cam1 b=new cam1(1);
	}
}

输出为

CS

bbb

CS

ccc

对象a,b分别调用了父类cam0的构造函数

 

super可以把当前对象的父类对象的引用作为参数传递给其他方法

这个用法和this把当前对象的引用作为参数传递给其他方法相似,这里就不赘述了

 






评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值