Vista previa del material en texto
0 MÉTODOS CON RETORNO EN JAVA Contenido Recapitulación ........................................................................................................................ 1 Métodos con retorno ............................................................................................................ 1 Bibliografía ............................................................................................................................. 6 1 Recapitulación En la clase de la semana anterior, hablábamos un poco acerca de lo que son los métodos o funciones en java, de manera general podemos definir a los métodos como porciones de código que permiten realizar operaciones específicas. Una vez escrito un método puede ser llamado las veces que sean necesarias dentro del método principal (main) o puede ser llamado por otros métodos definidos en la clase, permitiendo de esta manera simplificar la cantidad de código que contiene nuestro programa. También mencionamos que al definir un método de tipo void (vacío), este no retornaría valor alguno, simplemente ejecutaría el bloque de instrucciones que tiene definido en el cuerpo del método. Para esta semana del curso, corresponde que abordemos el contenido de los métodos con retorno y el uso de la sentencia return. Métodos con retorno Más formalmente ¿a qué nos referimos cuando hablamos de métodos con retorno? (Perez, 2010) refiere que los métodos con retorno tienen casi la misma definición de los métodos convencionales, la diferencia entre ellos radica en cuatro puntos esenciales que se detallan a continuación: 1. Son tipificados, dejamos atrás el tipo void (vacío) y ahora establecemos en la declaración del método, uno de los tipos de datos con los que cuenta java. 2. Al ser tipificados, obligatoriamente en el cuerpo del método, debemos utilizar la sentencia return. 3. El uso de esta sentencia, nos obliga a retornar o regresar un valor, al punto del código en donde se realizó la llamada del método. 4. El tipo de dato que retorna o regresa el método, debe coincidir con el tipo de dato establecido en la declaración del método (punto #1). La invocación de un método en el código, provoca una interrupción en la ejecución del mismo. Observe la siguiente ilustración. 2 En la ilustración 1 se muestra el uso de un método llamado CalculaPromedio(). Este método, tal y como su nombre lo dice, permite realizar el cálculo del promedio de las calificaciones obtenidas por un estudiante. Una de las características de los programas secuenciales, es que las instrucciones codificadas en el método principal se ejecutan una tras otra, tal y como fueron definidas. Observe la ilustración 1 (método principal) en el cual tenemos una serie de instrucciones que deberán ejecutarse. Observe que al llegar al punto en donde se invoca el método CalculaPromedio(), el control del programa pasa a manos del método CalculaPromedio(), es decir, el flujo de la ejecución del programa, se detiene en este punto y le pasa el mando al método. Luego de que las instrucciones detalladas en el método CalculaPromedio() son ejecutadas, retorna un valor (correspondiente al promedio de calificaciones obtenido) hacia el método principal, justo en el punto en donde se realizó la invocación o llamado al método. Esto quiere decir que el control de la ejecución del programa, es cedido nuevamente al método principal. Método CalculaPromedio() - Solicita notas - Calcula promedio - Retorna el promedio de las notas Método principal (main) - Solicita nombre del estudiante - Invoca el método CalculaPromedio() - Recibe el cálculo del promedio que hizo el método - Muestra el nombre del estudiante y el promedio que obtuvo. Cambio 1 Cambio 2 Ilustración 1: Interrupciones ocasionadas por un método 3 Con el valor que es retornado por el método, se pueden realizar cálculos o complementar algunos otros procesos, definidos en el método principal. Veamos a continuación, este ejemplo ya codificado. Linea 7: declaración del método CalculaPromedio(), notese que es public (para que desde cualquier parte de la clase se pueda accesar a él), es static (para que pueda utilizarse desde el método principal sin necesidad de crear un objeto de la clase), es de tipo double (esto quiere decir que deberá retornar un valor de igual tipo). Líneas 10, 11, 12: declaración de las variables locales del método. Líneas 15, 16, 17: solicitando datos al usuario por medio de cajas de dialogo. Líneas 20 y 21: proceso para el cálculo del promedio. El resultado se almacenará en la variable local promedio. 4 Línea 24: utilización de la sentencia return, mediante ella enviamos de regreso al método principal un valor, que en este caso es de tipo double (igual que el tipo definido en la declaración del método). Dentro del método principal o método main Líneas 31, 32: declaración de las variables locales del método main (estas variables existen únicamente dentro del dominio del método principal, fuera de él no existen). Línea 35: solicitamos el nombre del estudiante, esta recepción de datos tiene validez, únicamente dentro del método principal. Línea 38: invocamos el método CalculaPromedio() y valor que nos regresa, lo almacenamos en la variable promedioObetenido. Línea 41, 42: utilizamos una caja de dialogo de tipo mensaje, para mostrar tanto el nombre del estudiante, como el resultado del cálculo del promedio. Otro ejercicio práctico Método que permita saludar, deberá solicitar el nombre del usuario y deberá retornar la cadena de datos “Hola NombreDelUsario”. 5 Línea 5: declaración del método Saludar(), en este caso el método es de tipo String, por tal razón deberá retornar una cadena de caracteres. Línea 8: declaración de las variables locales del método. Línea 11: solicitando datos por medio de cajas de dialogo. Línea 14: creamos la cadena de retorno, en donde concatenamos la palabra Hola + la variable nombre. Dentro del método principal Línea 22: si observamos en esta línea del código, podemos hacer la invocación del método Saludar() dentro de una caja de dialogo. Recordemos que la caja dialogo de tipo mensaje, recibe como parámetro una cadena de caracteres. Como el método Saludar() retorna una cadena de caracteres, no habrán errores. 6 Bibliografía Deitel, P., & Deitel, H. (2012). Cómo programar en Java, Novena Edición. México DF: Pearson. Perez, D. D. (3 de 12 de 2010). Introducción a la programación empleando el lenguaje Java. Obtenido de Programación Java: http://inprojava.blogspot.com/2009/10/metodos-con-valor-de-retorno.html