Metodi sovraccarico in Java

April 30

In Java, una funzione si chiama "metodo", ei suoi parametri sono chiamati "argomenti". Un metodo può prendere qualsiasi numero di argomenti, ma un singolo colpo di testa metodo può prendere un solo set argomento definito. Per accettare set diversi, è necessario creare più intestazioni metodo per ogni diversa serie, o "sovraccarico" il metodo.

Sovraccarico Metodi

Al sovraccarico di un metodo, è sufficiente dichiarare più metodi con lo stesso nome ma con argomenti diversi. Qualsiasi oggetto di quella classe sarà in grado di chiamare entrambe le versioni del metodo immettendo insieme di parametri come argomenti. È anche possibile chiamare una diversa versione di un metodo di overload all'interno del corpo che di metodo (ad esempio "overloadedMethod ()" può chiamare "overLoadedMethod (int, double)" fintanto che la versione è anche stata dichiarata).

Il sovraccarico del Costruttore

Per impostazione predefinita, ogni classe in Java ha un costruttore che non accetta argomenti, che crea un'istanza semplicemente un oggetto e non si assume alcuna altra azione. Così, si crea un'istanza di quella classe chiamando quel costruttore. Tuttavia, se si esegue l'overload il costruttore con una versione che prende più argomenti, si disattiva il costruttore "default" senza argomenti, che possono rompersi altre parti del codice che si basano su quel costruttore. Si dovrà definire un nuovo costruttore senza argomenti se si vuole senza argomenti funzionalità indietro.

Vantaggi di sovraccarico

Uno dei vantaggi di sovraccarico è che permette di personalizzare in chiamata di metodo. Se si vuole progettare un metodo che prende flag opzionali, è possibile sovraccaricare il metodo per creare essenzialmente due versioni: una che prende solo gli argomenti obbligatori, e uno che prende tutti i potenziali argomenti. Nel corpo del metodo con meno argomenti, semplicemente chiamare l'altro metodo, passando gli argomenti a tale metodo, nonché i valori predefiniti per le flag opzionali.

Sovraccarico ed ereditarietà

Quando una classe eredita metodi dalla sua classe super, eredita anche tutti i metodi di overload pure. Si può anche ridefinire i metodi ereditati. Quando si sovrascrive un metodo di overload genitore, la classe figlia utilizzerà i propri metodi sovrascritti ogni volta che li trova - in caso contrario, userà la versione della classe genitore.