После прочтения перегруженных конструкторов из книги, я устал следующий код:перегруженные конструкторы
public class Employee {
String name;
int idNumber;
public Employee(){
this("JJ", 0);
System.out.println(name +" "+ idNumber);
}
public Employee(String name, int num){
this.name = name;
idNumber = num;
System.out.println(name +" 2nd "+ idNumber);
}
}
public class Object1 {
public static void main(String[] args) {
Employee emp = new Employee();
}
}
ВЫХОД:
JJ 2nd 0
JJ 0
Я действительно запутался. Почему «JJ 2nd 0» напечатал сначала «JJ 0» ?? Я создал объект-сотрудник сотрудника emp и не передавал никаких аргументов в параметре, не предполагается ли сначала вызвать первый конструктор?
Возможно, если бы люди использовали [отладчики] (HTTP://www.vogella.com/tutorials/EclipseDebugging/article.html), это не будет проблемой. – Qix
@ Qix Спасибо. Никогда не слышал об отладчике раньше, но я сделал google, и теперь я узнаю, как его использовать. – OPK
Я только что понял, вы задали ряд вопросов, но пока не приняли никаких ответов. Было бы неплохо принять некоторых, если бы они были действительно полезны, как способ сказать «спасибо», и указать будущим пользователям, которые рассматривают вопрос, ответ на который наилучшим образом ответил на вопрос. –