El instructor comenta que nos va a enseñar la forma de cerrar la conexión cuando hay una excepción lanzada desde el constructor, ya que nos vamos a topar con esta situación en repetidas ocasiones y la conexión no debe quedar abierta, pero al final él termina lanzando la excepción desde leerDatos, ya que no cierra la conexión cuando la excepción se lanza desde el constructor, y dice que el código final funciona igual que el anterior, pero ahora ya está más entendible, de que me perdí, cuál era el objetivo final? sólo optimizar el código? porque al final no se lanzó la excepción desde el constructor o cambió algo más que no entendí?