Cómo sobrecargar métodos en java

Una clase Java puede contener dos o más métodos con el mismo nombre, siempre que dichos métodos aceptan parámetros diferentes. Esta técnica, llamada sobrecarga, es una de las claves para la construcción de la flexibilidad en sus clases. Con la sobrecarga, se puede anticipar diferentes maneras en que alguien podría querer invocar funciones de un objeto y luego proporcionar métodos sobrecargados para cada alternativa.

El termino sobrecarga es precisa pero un poco lamentable. Normalmente, cuando usted dice que algo está sobrecargado, hay un problema. Afortunadamente, usted no tiene que preocuparse acerca de Java derrumbarse bajo el peso de métodos sobrecargados.

Usted ya está familiarizado con varias clases que se han sobrecargado métodos, aunque es posible que no se den cuenta. La clase PrintWriter, por ejemplo (el cual se accede a través de System.out), define 10 versiones del método println que le permiten imprimir diferentes tipos de datos. Las siguientes líneas muestran la declaración del método para cada una de estas sobrecargas:

void println () void println (boolean x) void println (char x) void println (char [] x) void println (doble x) void println (float x) void println (int x) void println (largo x) void println (Objeto x) void println (String x)

La regla básica en la creación de métodos sobrecargados, es que cada método debe tener una firma única. Es un método firma es la combinación de su nombre y el número y tipo de parámetros que acepta. Por lo tanto, cada uno de los métodos println tiene una firma diferente, porque aunque todos los métodos tienen el mismo nombre, cada método acepta un tipo de parámetro diferente.

Dos cosas que son no una parte de la firma de un método son

  • El método del tipo de retorno: No se puede codificar dos métodos con el mismo nombre y los parámetros, pero con diferentes tipos de retorno.

  • Los nombres de los parámetros: Todo lo que importa a la firma del método son los tipos de los parámetros y el orden en el que aparecen. Así, los dos métodos siguientes tienen la misma firma:

doble someMethodOfMine (doble x, boolean y) doble someMethodOfMine (doble param1, param2 boolean)



» » » » Cómo sobrecargar métodos en java