>>14 case classもクラスの一種なので多態性を実現するのにも使える ただ、case classで定義したクラスは ・クラス名(引数列)でインスタンスを生成できる ・パターンマッチングに使える という特徴がある。具体例を示した方が早いと思うので示すと
abstract class Exp case class Add(lhs :Exp, rhs :Exp) extends Exp case class Sub(lhs :Exp, rhs :Exp) extends Exp case class Num(value :Int) extends Exp