Методы получения и установки используются для извлечения ваших «закрытых» переменных (= переменных, видимых внутри класса, для которого они определены), вне класса.
Например:
private String name;
будет иметь такой геттер:
public String getName() {
return name;
}
и такой сеттер:
public void setName(String name) {
this.name = name;
}
(вы можете использовать «защищенный», если хотите, чтобы эта переменная была видна только впакет, а не во всем проекте).
метод toString () здесь, если вы хотите отобразить некоторую информацию о вашем объекте, которая может быть полезна с точки зрения отладки.
Метод equals будет использоваться, чтобы узнать, как вы хотите сравнивать объекты типа Person (например, только по идентификаторам).Взгляните на эту ссылку , чтобы получить больше информации о равенстве.
Как и предполагал RonK, обязательно реализуйте hashCode, если вы реализуете equals, они идут вместе и должны использоватьте же поля (часть контракта).
Правило таково: если:
objectA.equals(objectB) returns true
, то
objectA.hashCode() has to be equal to objectB.hashCode()