Sí, es cierto lo que dice Casuis, por responder rápido no leí bien el código.
Alex, lo que estás diciendo de alguna forma con ese código es:
- El Mensaje es un tipo de Idioma
- Y que Sitio es un tipo de Mensaje y a su vez es un tipo de Idioma
Para herencia siempre tienes que respetar una relación de parentesco entre las clases, no puedes heredar para acceder a código, conceptualmente es incorrecto.
Un Perro puede heredar de Mamífero, un Usuario puede heredar de Persona, etc, pero un Mensaje no puede heredar de Idioma y Sitio no puede heredar de Mensaje.
Existen otras relaciones además de herencia, tienes dependencia y asociación (y sus variantes).