Ejemplo 4 - Utilización de la sobrecarga de métodos

Objetivo

Comprender el funcionamiento de la sobrecarga de métodos

Enunciado

Escriba una clase con seis métodos sobrecargados que se invoquen dependiendo del tipo y número de parámetros solamente.

Solución

La siguiente clase tiene sobrecargado un método que imprimir un mensaje. Se declararon estáticos para simplicar el ejemplo e invocar directamente utilizando solo el nombre de la clase. El que un método sea estático o no, no afecta la posibilidad de que sea sobrecargado.

class Demostrador {
 public static void verMensaje(int valor) { 
     System.out.println("Entero: " + valor);
 }
 public static void verMensaje(double valor) { 
     System.out.println("Real: " + valor);
 }
  public static void verMensaje(char valor){
     System.out.println("Char: " + valor);  
  }
  public static void verMensaje(int valor1, int valor2){
     System.out.println("Dos enteros: " + valor1 + " "+valor2);    
  }
  public static void verMensaje(int valor1, double valor2){
     System.out.println("Un entero y un Double: " + valor1 + " "+valor2);      
  }
  public static void verMensaje(){
     System.out.println("No hay parámetros");      
  }
}

La salida de varios llamados al mismo método sobrecargado se ven a continuación:

Welcome to DrJava.
> Demostrador.verMensaje() No hay parámetros > Demostrador.verMensaje(1) Entero: 1 > Demostrador.verMensaje('X') Char: X > Demostrador.verMensaje(2,3.14) Un entero y un Double: 2 3.14 > Demostrador.verMensaje(2,3) Dos enteros: 2 3 > Demostrador.verMensaje(2.16) Real: 2.16 >

Note como los diferentes tipos y número de parámetros determinan a cual versión del método se invoca.

Código Fuente

Demostrador.java