Manera adecuada de implementar ICloneable
¿Cuál es la forma correcta de implementarICloneable
en una jerarquía de clases? Digamos que tengo una clase abstractaDrawingObject
. Otra clase abstractaRectangularObject
hereda deDrawingObject
. Luego hay múltiples clases concretas comoShape
, Text
, Circle
que todos heredan deRectangularObject
. Quiero implementarICloneable
enDrawingObject
y luego llevarlo a la jerarquía, copiando las propiedades disponibles en cada nivel y llamando a los padresClone
en el siguiente nivel
Sin embargo, el problema es que, dado que las dos primeras clases son abstractas, no puedo crear sus objetos en elClone()
método. Por lo tanto, debo duplicar el procedimiento de copia de propiedad en cada clase concreta. ¿O hay un mejor camino?