考える際の土台として、以下のようなクラスを考えます。
class Person(val name: String)
class Teacher(override val name: String, val kamoku: String) extends Person(name)
また 文字列からクラスAのインスタンスを生成する Read[A]
とクラスAのインスタンスから文字列を生成する Write[A]
というクラスについて考えてみます。(ReadはfromJson、WriteはtoJsonのようなイメージです。)