Question: what are scala case classes?
Answer: Case classes are regular classes which export their constructor parameters and which provide a recursive decomposition mechanism via pattern matching. ... To facilitate the construction of case class instances, Scala does not require that the new primitive is used. One can simply use the class name as a function.