A case class
предоставляет методы equals
, hashCode
и toString
, основанные на параметрах основного конструктора, которые также превращаются в val
Кроме того, объект-компаньон получает методы apply
и unapply
, опять же на основе основных параметров конструктора.
Кроме того, case class
наследуется от Serializable
и Product
и не должен расширяться другими классами.
Если все эти вещи подходят для вашего класса, не стесняйтесь объявлять его как `case class '.