Это не случай глобальной и локальной переменной . (Это параметризованный конструктор).
Каждый раз, когда вы создаете экземпляр класса, вы присваиваете значения его полям.
Если вы этого не сделаете, вам придется вызывать методы установки поля через переменную экземпляра.
public EmpRecord(String name, int id) {
this.name = name;
this.id = id;
}
Объяснение:
всякий раз, когда вы создаете экземпляр класса EmpRecord , например:
EmpRecord obj = new EmpRecord("foo", 111);
Здесь вы прямо присваиваете значение foo для EmpRecord.name и 111 для EmpRecord.id .
Если вы этого не сделаете, тогда, если вы хотите присвоить значение, вам нужно сделать:
obj.setId(111);
obj.setName("foo");
Так что это не более чем присвоение значений полям во время создания экземпляра.