>> Tecnologia elettronica >  >> Casa intelligente >> Vita smart

Vantaggi e svantaggi del metodo overloading in Java

I metodi sovraccaricati (overloaded) sono metodi nella stessa classe che condividono lo stesso nome ma accettano tipi di variabili diversi come argomenti. Ad esempio, una classe può contenere due diversi metodi "add": uno che accetta due valori double, "add(double a, double b)", e uno che accetta due valori interi, "add(int a, int b)". Il computer decide automaticamente quale metodo chiamare in fase di esecuzione in base ai tipi di variabili passati al metodo.

Flessibilità

I metodi sovraccaricati danno ai programmatori la flessibilità di chiamare un metodo simile per diversi tipi di dati. Se stai lavorando su un programma matematico, per esempio, potresti usare il sovraccarico per creare diverse classi "moltiplica", ognuna delle quali moltiplica un numero o tipo di argomento diverso: il più semplice "moltiplica(int a, int b)" moltiplica due interi; il metodo più complicato "moltiplica(double a, int b, int c)" moltiplica un double per due interi — potresti poi chiamare "moltiplica" su qualsiasi combinazione di variabili per cui hai creato un metodo sovraccaricato e ricevere il risultato corretto.

Costruttori

Il sovraccarico è anche usato sui costruttori per creare nuovi oggetti dati diversi quantità di dati. Per esempio, potresti usare il sovraccarico per creare tre diversi costruttori per un oggetto "Casa" con numero di casa, nome via e variabili colore. Il costruttore più semplice "Casa()" non accetta argomenti e crea una casa con variabili predefinite o vuote. Un costruttore più complesso, "Casa(int numeroCasa, String nomeVia)", crea una casa con il numero di casa e nome via specificati, ma un colore predefinito o vuoto. Il costruttore più complesso, "Casa(int numeroCasa, String nomeVia, String colore)", crea una casa con tutte le informazioni specificate, lasciando nulla come predefinito. Potresti poi creare un oggetto casa basato sulle informazioni attualmente disponibili, con le informazioni non disponibili lasciate vuote o al predefinito.

Riferimenti ambigui

I metodi sovraccaricati devono usare numeri o tipi di argomenti diversi per evitare ambiguità. Se crei due metodi nella stessa classe che hanno lo stesso nome e accettano due interi come argomenti, il compilatore Java non sarà in grado di distinguere tra i due, anche se le variabili di input hanno nomi diversi. Per esempio, il metodo "add(int a, int b)" non può esistere nella stessa classe del metodo "add(int c, int d)".

Tipi di ritorno

Devi definire un tipo di ritorno per ogni metodo sovraccaricato. I metodi possono avere tipi di ritorno diversi — per esempio, "add(int a, int b)" può restituire un intero, mentre "add(double a, double b)" restituisce un double. Tuttavia, Java non può distinguere tra due metodi diversi basandosi sul loro tipo di ritorno. Quindi, "int moltiplica(double a, double b)" non può esistere nella stessa classe di "double moltiplica(double a, double b)".

  1. Vantaggi e svantaggi della distillazione frazionata
  2. Vantaggi e svantaggi di Internet mobile
  3. Vantaggi e svantaggi degli Internet café
  4. Vantaggi e Svantaggi di GoToMeeting
  5. Vantaggi e Svantaggi delle Java Virtual Machine
  6. Vantaggi e Svantaggi dei Mainframe