Java – chaotic example of constructor overloading
•
Java
The following program output is
I am Parameterized Ctor a = 0 b = 0
public class ParameterizedCtor {
private int a;
private int b;
public ParameterizedCtor() {
System.out.println("I am default Ctor");
a =1;
b =1;
}
public ParameterizedCtor(int a,int b) {
System.out.println(" I am Parameterized Ctor");
a=a;
b=b;
}
public void print() {
System.out.println(" a = "+a);
System.out.println(" b = "+b);
}
public static void main(String[] args) {
ParameterizedCtor c = new ParameterizedCtor(3,1);
c.print();
}
}
Why?
Solution
Uninitialized private variables A and B are set to zero by default Moreover, c'tctor is overloaded in place, and the parameters ctor (int a, int b) are set from main and local variables A & B to 3 and 1, but the class variables A and B are still zero Therefore, a = 0, B = 0 (the default value is not called)
To set a class variable, use:
this.a = a; this.b = b;
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
