Analisis de proceso de construcción de instancias

Creo que este proceso es muy poco conocido a detalle por lo que creo que vale la pena tenerlo presente.

Cuando se crea una instancia de una clase lo primero que se hace inicializar los miembros estaticos de la clase, por lo tanto antes de una construccion  ya existen sus mimbros y funciones para mas tarde se inicialicen los miembros de instancia asignando los valores por defecto de los mismos, mas tarde y en el caso de que estas tengan en su declaracion un valor asignado el CLR asigna estos valores, despues de esto pasa a la llamada del constructor llamando, sea el caso, implicitamente al constructor sin parametros de la clase base o explicitamente al constructor deseado.  Generalmente este proceso es poco conocido debido a que la mayoria de las clases heredan implicitamente de System.Object el cual tiene un constructor sin parametros.

Los problemas comienzan cuando se hereda de una clase que se define un constructor con parametros, provocando que el compilador no tenga la necesidad de crear uno sin parametros;  y por lo tanto al heredar de esta clase sea necesario definir explicitamente que se usara el constructor definido.