黑马程序员_重载~

----------------------android培训java培训、期待与您交流! ----------------------

先来看一段代码

class A{
	private int x;
	A(){this(10);}

	 A(int i) {
		this.x = i;
	}
	 public int print(){return x;}
}

类A 有两个构造函数,一个无參构造函数,和一个有参构造函数

现在我们创建两个对象

A a = new A();

A b = new B(20);

分别打印

System.out.println(a.print());

System.out.println(b.print());

输出结果:

10

20

为何是这个结果呢?

这就是用到了函数的重载

当我们A a = new A();编译器会自动调用无参构造函数

当我们A b = new A(10);编译器会自动调用构造函数 A(int i)

细心的可以看到  我们在无参构造函数里面调用了  this(10),这里实际上是调用了 A(10)

其实除了参数的有无,我们还可以通过参数的种类如我们可以加一个  A(float f)来区别

还可以通过参数的个数,甚至参数的顺序都可以。

这就是函数的重载




----------------------android培训java培训、期待与您交流! ----------------------


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值