if (!(o instanceof Solution)) return false; if (o == null || !(o instanceof Solution)) return false; Без первого ифа валик завалил. Почему недостаточно условия во втором ифе?