¿Por qué el constructor predeterminado sin parámetros desaparece al crear uno con parámetros?

En C #, C ++ y Java, cuando creas un constructor tomando parámetros, el parámetro sin parámetros predeterminado desaparece. Siempre he aceptado este hecho, pero ahora comencé a preguntarme por qué.

¿Cuál es la razón de este comportamiento? ¿Es solo una "medida / conjetura de seguridad" que dice "Si ha creado un constructor propio,probablemente ¿No quiere que este implícito ande por ahí "? ¿O tiene una razón técnica que hace imposible que el compilador agregue uno una vez que usted mismo haya creado un constructor?

Respuestas a la pregunta(11)

Su respuesta a la pregunta