モデルの名前を持つ文字列を取得し、そのケースクラスのインスタンスを返す関数がありますが、この関数で動的戻り型を使用する正しい方法は何ですか?スカラ関数で動的戻り型を使用する
case class Person(fname: String, lname: String)
case class Animal(type: String, weight: Double)
def getInstanceOf(model: String): ??? = model match {
case "person" => Person("jack", "robinson")
case "animal" => Animal("lion", 190.0)
}
ありがとうございます!
を説明した場合、答えるために容易になるだろうと思いますタイプ固有のメソッドにアクセスするには、特定のタイプにキャストする必要があります。一般に、無関係の型を単一のメソッドから返すのは悪い考えです。 – jwvh
コンパイル時に実行時まで存在しない情報も知ることはできません。型はコンパイル時の概念です。 –