1. kamere
  2. Car Audio & Electronics
  3. Domači glasbeni sistem
  4. Osebni avdio
  5. televizorji
  6. Pametni dom
  >> Elektronske tehnologije Online >  >> Pametni dom >> Pametno življenje

Prednosti in slabosti metode preobremenitve v Javi

Preobremenjene metode so metode v istem razredu, ki imajo isto ime, vendar sprejemajo različne tipe spremenljivk kot argumente. Razred lahko na primer vsebuje dve različni metodi »dodaj«:eno, ki sprejme dve dvojni vrednosti, »add(double a, double b),« in eno, ki sprejme dve celoštevilski vrednosti, »add(int a, int b). " Računalnik se samodejno odloči, katero metodo bo poklical med izvajanjem na podlagi vrst spremenljivk, ki so bile posredovane metodi.

Prilagodljivost

Preobremenjene metode omogočajo programerjem prilagodljivost, da kličejo podobno metodo za različne vrste podatkov. Če delate na matematičnem programu, lahko na primer uporabite preobremenitev, da ustvarite več razredov "pomnoži", od katerih vsak pomnoži različno število vrst argumentov:najenostavnejši "pomnoži (int a, int b)" pomnoži dva cela števila; bolj zapletena metoda "multiply(double a, int b, int c)" pomnoži eno dvojno z dvema celima številoma -- nato lahko pokličete "multiply" za katero koli kombinacijo spremenljivk, za katero ste ustvarili preobremenjeno metodo, in prejmete ustrezen rezultat.

Konstruktorji

Preobremenitev se uporablja tudi pri konstruktorjih za ustvarjanje novih objektov glede na različne količine podatkov. Na primer, lahko uporabite preobremenitev, da ustvarite tri različne konstruktorje za objekt "Hiša" s hišno številko, imenom ulice in barvnimi spremenljivkami. Najenostavnejši konstruktor "House()" ne sprejema nobenih argumentov in ustvari hišo s privzetimi ali praznimi spremenljivkami. Bolj zapleten konstruktor "Hiša(int houseNumber, String streetName)" ustvari hišo s podano hišno številko in imenom ulice, vendar s privzeto ali prazno barvo. Najbolj zapleten konstruktor, "Hiša(int houseNumber, String streetName, String color)", ustvari hišo z vsemi navedenimi informacijami, ne pusti ničesar privzetega. Nato lahko ustvarite hišni objekt na podlagi trenutno razpoložljivih informacij, pri čemer nerazpoložljive informacije pustite prazne ali privzeto.

Dvoumne reference

Preobremenjene metode morajo uporabljati različna števila ali vrste argumentov, da se izognejo dvoumnosti. Če ustvarite dve metodi v istem razredu, ki imata isto ime in sprejmeta dve celi števili kot argumenta, prevajalnik Java ne bo mogel razlikovati med obema, tudi če imata vhodni spremenljivki različni imeni. Na primer, metoda "add(int a, int b)" ne more obstajati v istem razredu kot metoda "add(int c, int d)."

Vrste vrnjenih podatkov

Za vsako preobremenjeno metodo morate definirati vrnjeno vrsto. Metode imajo lahko različne vrste vrnitve -- na primer "add(int a, int b)" lahko vrne celo število, medtem ko "add(double a, double b)" vrne dvojno. Vendar pa Java ne more razlikovati med dvema različnima metodama glede na njuno vrnjeno vrsto. Zato "int multiply(double a, double b)" ne more obstajati v istem razredu kot "double multiply(double a, double b)."


  1. Prednosti in slabosti frakcionirano destilacijo
  2. Prednosti & Slabosti Mobilni internet
  3. Prednosti in slabosti GoToMeeting
  4. Prednosti in slabosti navideznih strojev Java
  5. Prednosti in slabosti velikih računalnikov