Посмотрите на конструктор:
public Candidate() {
String name = "Not Available! ";
int votes = 0;
}
Вы оцениваете локальную переменную, а не поле экземпляра name
.
Они ссылаются на два разных объекта.Таким образом, оценка одного не оказывает никакого влияния на другое.
Вы допустили ту же ошибку для поля votes
, но это не вызывает никаких проблем, поскольку поле int
имеет 0
в качестве значения по умолчанию.
Поэтому вместо этого установите поле name
:
public Candidate() {
this.name = "Not Available! ";
// not required to set votes as it has 0 as default value
}
Или просто используйте инициализаторы полей, чтобы задать значения по умолчанию для этих полей:
public class Candidate {
//...
private String name = "Not Available! ";
private int vote; // 0 as default value
//...
}