estoy aprendiendo Scala y no puedo encontrar la manera de hacer esto:Scala: establecer un valor de campo de nombre de campo reflexivamente
estoy haciendo un asignador entre objetos Scala y Google App Engine entidades, por lo que si i tener una clase como esta:
es necesario crear una instancia de esa clase, en java que obtendría el campo por su nombre y luego hacer field.set(object, value)
pero no puedo encontrar la manera de hacerlo en Scala.
No puedo usar el reflejo de java ya que los campos de Estudiante se ven como privados y field.set arroja un error debido a eso.
Gracias
Gracias! eso fue realmente útil, tomé parte de su código y funcionó bien en Scala 2.7.6 – Damian
También puede buscar directamente el método por nombre si usa getClass.getDeclaredMethod si conoce de antemano los tipos de parámetros del método. –
¿Por qué es mejor que establecer field.setAccessible (true)? – Yael