¿Cómo copiar valores de objeto de superclase a valores de objeto de subclase?

Quiero copiar getters de objetos de superclase a los setters de subclase de objetos. Pero, ¿cómo puedo hacer esto fácilmente. Estoy buscando algo como clon. ¿Podrías por favor ayudarme a encontrarlo?

Muchas gracias.

Un código simple:

Super clase:

public class SuperClass1{ private String name; private String surname; public void setName(String name){ this.name=name; } public String getName(){ return this.name; } public void setSurname(String surname){ this.surname=surname; } public String getSurname(){ return this.surname; } } 

Subclase

 public class SubClass1 extends SuperClass1{ private float gpa; public void setGpa(float gpa){ this.gpa=gpa; } public float getGpa(){ return gpa; } } 

y la clase de llamadas:

 public class CallerClass1{ public static void main(String[] args){ SuperClass1 super1=new SuperClass1(); SubClass1 subclass1=new SubClass1(); //How to subclass1 object values easily taken from super1 } } 

}

Si el rendimiento no es un problema aquí, puede copiar todas las propiedades de una clase a la otra haciendo uso de la reflexión.

Consulte este enlace a esta otra pregunta que explica cómo hacerlo:

Copie todos los valores de los campos de una clase a otra a través de la reflexión.

Este otro enlace le dará el código, sin usar BeanUtils:

http://blog.lexique-du-net.com/index.php?post/2010/04/08/Simple-properties-Mapper-by-reflection

Siempre hago uso de este tipo de funciones en mis proyectos. Realmente útil.