Overload

Riassunto

L'overload in Java è un concetto che consente di definire più metodi con lo stesso nome all'interno di una classe, ma con firme diverse. Questo permette di creare metodi con lo stesso nome ma con comportamenti diversi in base ai parametri passati.

Definizione:

L'overload si verifica quando una classe ha più di un metodo con lo stesso nome, ma con firme diverse. La firma di un metodo include il suo nome e il tipo, il numero e l'ordine dei suoi parametri. I metodi sovraccaricati possono avere tipi di ritorno diversi, ma devono differire nella firma dei parametri.

Utilità:

  • Flessibilità: Consente di definire metodi con lo stesso nome ma con comportamenti diversi in base ai parametri passati.
  • Leggibilità del Codice: Aiuta a rendere il codice più chiaro e leggibile, poiché gli stessi nomi di metodo possono essere utilizzati per operazioni simili.
  • Riusabilità del Codice: Favorisce la riusabilità del codice, poiché permette di definire funzionalità simili utilizzando lo stesso nome di metodo.

Esempio:

Ecco un esempio di overload in Java:

class Calcolatrice {
      int somma(int a, int b) {
          return a + b;
      }
  
      double somma(double a, double b) {
          return a + b;
      }
  }
  
  public class Main {
      public static void main(String[] args) {
          Calcolatrice calcolatrice = new Calcolatrice();
          int risultato1 = calcolatrice.somma(5, 3);
          double risultato2 = calcolatrice.somma(2.5, 3.7);
          
          System.out.println("Risultato 1: " + risultato1); // Output: 8
          System.out.println("Risultato 2: " + risultato2); // Output: 6.2
      }
  }

Nell'esempio sopra, la classe Calcolatrice ha due metodi chiamati somma(). Uno accetta due interi come parametri e restituisce un intero, mentre l'altro accetta due double come parametri e restituisce un double. Questo è un esempio di overload dei metodi somma().