La declaración de un método puede incluir los siguientes elementos:
- Modificadores (como por ejemplo los ya vistos
public
oprivate
, más algunos otros que irás conociendo poco a poco). No es obligatorio incluir modificadores en la declaración. - El tipo devuelto (o tipo de retorno), que consiste en el tipo de dato (primitivo o referencia) que el método devuelve tras ser ejecutado. Si eliges
void
como tipo devuelto, el método no devolverá ningún valor. - El nombre del método, aplicándose para los nombres el mismo convenio que para los atributos.
- Una lista de parámetros separados por comas y entre paréntesis donde cada parámetro debe ir precedido por su tipo. Si el método no tiene parámetros la lista estará vacía y únicamente aparecerán los paréntesis.
- Una lista de excepciones que el método puede lanzar. Se utiliza la palabra reservada
throws
seguida de una lista de nombres de excepciones separadas por comas. No es obligatorio que un método incluya una lista de excepciones, aunque muchas veces será conveniente. En unidades anteriores ya has trabajado con el concepto de excepción y más adelante volverás a hacer uso de ellas. - El cuerpo del método, encerrado entre llaves. El cuerpo contendrá el código del método (una lista sentencias y estructuras de control en lenguaje Java) así como la posible declaración de variables locales.
La sintaxis general de la cabecera de un método podría entonces quedar así:
[private | protected | public] [static] [abstract] [final] [native] [synchronized]
<tipo> <nombreMétodo> ( [<lista_parametros>] )
[throws <lista_excepciones>]
Como sucede con todos los identificadores en Java (variables, clases, objetos, métodos, etc.), puede usarse cualquier identificador que cumpla las normas. Ahora bien, para mejorar la legibilidad del código, se ha establecido el siguiente convenio para nombrar los métodos: utilizar un verbo en minúscula o bien un nombre formado por varias palabras que comience por un verbo en minúscula, seguido por adjetivos, nombres, etc. los cuales sí aparecerán en mayúsculas.
Algunos ejemplos de métodos que siguen este convenio podrían ser: ejecutar, romper, mover, subir, responder, obtenerX, establecerValor, estaVacio, estaLleno, moverFicha, subirPalanca, responderRapido, girarRuedaIzquierda, abrirPuertaDelantera, CambiarMarcha, etc.
En el ejemplo de la clase Punto
, puedes observar cómo los métodos obtenerX
y obtenerY
siguen el convenio de nombres para los métodos, devuelven en ambos casos un tipo int
, su lista de parámetros es vacía (no tienen parámetros) y no lanzan ningún tipo de excepción:
int obtenerX ()
int obtenerY ()
Situación anómala durante la ejecución de un programa. En Java cuando se produce algún tipo de error se lanza una excepción.