Ya sabemos como modificar la ejecución de bucles y estructuras condicionales múltiples, pero ¿Podríamos modificar la ejecución de un método? ¿Es posible hacer que éstos detengan su ejecución antes de que finalice el código asociado a ellos? Sí es posible, a través de la sentencia return
podremos conseguirlo.
La sentencia return
puede utilizarse de dos formas:
- Para terminar la ejecución del método donde esté escrita, con lo que transferirá el control al punto desde el que se hizo la llamada al método, continuando el programa por la sentencia inmediatamente posterior.
- Para devolver o retornar un valor, siempre que junto a
return
se incluya una expresión de un tipo determinado. Por tanto, en el lugar donde se invocó al método se obtendrá el valor resultante de la evaluación de la expresión que acompañaba al método.
En general, una sentencia return
suele aparecer al final de un método, de este modo el método tendrá una entrada y una salida. También es posible utilizar una sentencia return
en cualquier punto de un método, con lo que éste finalizará en el lugar donde se encuentre dicho return
. No será recomendable incluir más de un return
en un método y por regla general, deberá ir al final del método, como hemos comentado.
El valor de retorno es opcional, si lo hubiera debería de ser del mismo tipo o de un tipo compatible al tipo del valor de retorno definido en la cabecera del método, pudiendo ser desde un entero a un objeto creado por nosotros. Si no lo tuviera, el tipo de retorno sería void
, y return
serviría para salir del método sin necesidad de llegar a ejecutar todas las instrucciones que se encuentran después del return
.