int obtenerX ()
{
return x;
}
El interior de un método (cuerpo) está compuesto por una serie de sentencias en lenguaje Java:
- Sentencias de declaración de variables locales al método.
- Sentencias que implementan la lógica del método (estructuras de control como bucles o condiciones; utilización de métodos de otros objetos; cálculo de expresiones matemáticas, lógicas o de cadenas; creación de nuevos objetos, etc.). Es decir, todo lo que has visto en las unidades anteriores.
- Sentencia de devolución del valor de retorno (
return
). Aparecerá al final del método y es la que permite devolver la información que se le ha pedido al método. Es la última parte del proceso y la forma de comunicarse con la parte de código que llamó al método (paso de mensaje de vuelta). Esta sentencia de devolución siempre tiene que aparecer al final del método. Tan solo si el tipo devuelto por el método esvoid
(vacío) no debe aparecer (pues no hay que devolver nada al código llamante).
En el ejemplo de la clase Punto
, tenías los métodos obtenerX
y obtenerY
. Veamos uno de ellos:
En ambos casos lo único que hace el método es precisamente devolver un valor (utilización de la sentencia return
). No recibe parámetros (mensajes o información de entrada) ni hace cálculos, ni obtiene resultados intermedios o finales. Tan solo devuelve el contenido de un atributo. Se trata de uno de los métodos más sencillos que se pueden implementar: un método que devuelve el valor de un atributo. En inglés se les suele llamar métodos de tipo get, que en inglés significa obtener.
Además de esos dos métodos, la clase también disponía de otros dos que sirven para la función opuesta (establecerX
y establecerX
). Veamos uno de ellos:
void establecerX (int vx)
{
x= vx;
}
En este caso se trata de pasar un valor al método (parámetro vx
de tipo int
) el cual será utilizado para modificar el contenido del atributo x del objeto. Como habrás podido comprobar, ahora no se devuelve ningún valor (el tipo devuelto es void
y no hay sentencia return
). En inglés se suele hablar de métodos de tipo set, que en inglés significa poner o fijar (establecer un valor). El método establecerY es prácticamente igual pero para establecer el valor del atributo y.
Normalmente el código en el interior de un método será algo más complejo y estará formado un conjunto de sentencias en las que se realizarán cálculos, se tomarán decisiones, se repetirán acciones, etc. Puedes ver un ejemplo más completo en el siguiente ejercicio.