----------------------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培训、期待与您交流! ----------------------
498

被折叠的 条评论
为什么被折叠?



