Java - Duda con clases

   
Vista:

Duda con clases

Publicado por Sloy (1 intervención) el 28/08/2009 01:55:32
Hola a todos. Veréis, tengo una duda con las clases en Java que me lleva corroyendo la cabeza toda la tarde, y acudo a ustedes para ver si consigo resolverlo.

A ver si consigo explicarme.
Tengo una clase Manivela y otra Conducto, sin herencia de ninguna otra.
Ambas tienen un método Girar(). Además tengo una clase Main que será la que cree los objetos y lleve a cabo las operaciones. Y creo los siguientes objetos a partir de estas clases:

manivelaA, manivelaB, conducto1, conducto2, conducto3

El funcionamiento que quiero darles es el siguiente:
Cuando hago manivelaA.Girar() esto tiene que ejecutar conducto1.Girar() y conducto2.Girar(); y cuando hago manivelaB.Girar() debe ejecutar conducto2.Girar() y conducto2.Girar().

Pues bien, no sé qué código debo poner en el método Girar() de Manivela para que llame a los métodos de dos objetos.

¿Alguna idea?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Duda con clases

Publicado por Tom (912 intervenciones) el 28/08/2009 09:40:07
Sí. Si existe alguna dependencia entre tus objetos (es evidente que sí) deberías haber diseñado las clases teniéndola en cuenta.

Sin saber lo que quieres hacer, hay muchas soluciones para tu caso, yo te recomendaría que diseñaras las clases de manera que te permitan relacionarse entre sí.

Class Manivela() {
ArrayList<Conducto> conductos;

void asociarConducto(Conducto c) {
// añadir un conducto al array
}

void Girar() {
// Código para girar la manivela.
for(Conducto c : conductos) {
c.Girar(); // Girar conducto asociado
}
}

Class Conducto() {
void Girar() {
// código para girar
}
}

(No entiendo, por cierto, que un conducto gire ...)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar