1

コンパニオン オブジェクトが表すクラスを取得するにはどうすればよいですか? 例えば:

val user = User("something")
val userClazz = user.getClass //returns somepackage.User

コンパニオン User オブジェクトがある場合:

object User {
  def myClass = this.getClass //seems to return a different type of class somepackage.User$
}

私の質問は、「真の」ケースクラスクラスを取得するにはどうすればよいですか? コンパニオン オブジェクト内で this.getClass を使用しようとしているときに、これが奇妙な「プライベート」コンストラクターを取得する原因となっているリフレクションのインスタンスがあります。

4

3 に答える 3