Cómo construir dos objetos, entre sí como parámetro / miembro

Tengo dos clases que necesitan una instancia de la otra para funcionar. Normalmente, si un objeto necesita otro objeto para ejecutarse, me gusta pasarlo en el constructor. Pero no puedo hacer eso en este caso, porque un objeto tiene que ser instanciado antes que el otro, y por lo tanto, el segundo objeto no existe para pasarlo al constructor del primer objeto.

Puedo resolver esto pasando el primer objeto al constructor del segundo objeto, luego llamando a un setter en el primer objeto para pasarle el segundo objeto, pero eso parece un poco torpe, y me pregunto si hay una mejor manera:

backend = new Backend();
panel = new Panel(backend);
backend.setPanel();

Nunca he puesto ningún estudio en MVC; Supongo que estoy tratando con un modelo aquí (el Backend) y una vista o un controlador (el Panel). ¿Alguna idea aquí que pueda obtener de MVC?

Respuestas a la pregunta(6)

Su respuesta a la pregunta