Реализация хеш-кода и равно для пользовательских классов

Так что у меня есть много пользовательских классов, которые также имеют собственные выражения внутри них с использованием композиции.

У моих пользовательских классов есть переменные, которые меняются очень часто, и я добавляю их в HashSets. Поэтому мой вопрос заключается в том, когда я реализую hashCode - что мне делать для класса, в котором есть только частные поля, которые постоянно меняются?

Вот пример одного пользовательского класса:

public class Cell {
    protected boolean isActive;
    protected boolean wasActive;

    public Cell() {
    this.isActive = false;
    this.wasActive = false;
    }

    // getter and setter methods...

    @Override
    public int hashCode() {
    // HOW SHOULD I IMPLEMENT THIS IF THIS custom object is constantly
        // being added into HashSets and have it's private fields isActive
        // and wasActive constantly changed.
    }

    // ANOTHER QUESTION Am I missing anything with this below equals implementation?
    @Override
    public boolean equals(Object object) {
    boolean result = false;
    if (object instanceof Cell) {
        Cell otherCell = (Cell) object;
        result = (this.isActive == otherCell.isActive && this.wasActive == 
            otherCell.wasActive);
    }
    return result;
    }

Ответы на вопрос(3)

Ваш ответ на вопрос