¿Existe alguna razón conocida por la cual FormatException
no hereda de ArgumentException
? Un formato no válido parecería ser un caso muy específico de un argumento que no es válido, similar a ArgumentOutOfRangeException
.¿Por qué FormatException no hereda de ArgumentException?
Los MSDN article for the class estados:
FormatException se inicia cuando el formato de un argumento en una llamada a un método no coincide con el formato del correspondiente tipo de parámetro formal. Por ejemplo, si un método especifica un parámetro
String
que consta de dos dígitos con un período incrustado, pasar un argumento de cadena correspondiente que contenga solo dos dígitos para ese método provocaría que se lanzara FormatException.
Suena como el escenario para un ArgumentException
o me deriva la clase.
Todo esto significa que no puede tratar con FormatException
en la familia de excepciones ArgumentException
más grande, ni puede identificar qué parámetro provocó la excepción.
¿Hay alguna razón para que esta excepción aparentemente fuera de lugar esté donde está?
Ese es un argumento lo suficientemente convincente para mí. La documentación que rodea a la clase es claramente engañosa cuando menciona específicamente argumentos en el uso de la excepción. –
Downvoter: ¿me importa explicarlo? Me pregunto qué hay en esta respuesta que sea realmente "downvote-able". –
Es un error-clic en mi parte, que SO no me deja deshacer en ese momento. Si editas tu respuesta, me encantaría revertirla. –