Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/10/2008, 12:56
Keysher
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 6 meses
Puntos: 17
Duda sobre teoria de clases

Buenas,

Tengo una duda de concepto.

Imaginemos que tengo una clase. Para usar el ejemplo típico de POO, la llamaremos "Coche", además tengo otras dos clases: "Rueda" y "Tapacubos" (sería casi absurdo, pero es por poner un ejemplo).


El caso es que quiero saber cual sería la forma más óptima de implementar esto, sabiendo que sólo quiero que se creen objetos de la clase "Coche" (que será la encargada de crear los diferentes objetos del resto de clases).

La herencia no creo que aplique aquí, ya que "Rueda" no es estrictamente hija de "Coche", no hereda ni sus propiedades ni sus métodos.

Tampoco quiero que se puedan crear objetos de la clase "Rueda" o "Tapacubos", de eso se encargará la clase "Coche".

Resumiendo un poco, necesito saber cómo sería el esquema de un sistema de clases como el que propongo.

Lo puedo hacer con clases independientes, y funcionaría bien, pero entonces cualquiera podría crear un objeto de la clase "Rueda o "tapacubos", pero eso no me interesa, ya que un objeto de esa clase sería inutil por sí mismo.

La otra opción es que vayan herando, "Rueda" heredaría de "Coche" y "Tapacubos" de "Rueda", pondría las clases, los atributos y los métodos como protected, salvo los de la clase Tapacubos y sólo usaría esa clase, pero no sé si éste es el mejor método, es decir, realmente no estaría creando un objeto "Tapacubos", sino el Coche entero....

Espero que se entienda medianamente bien.