Rozdiel medzi preťažením a prepustením v jazyku Java

Kľúčový rozdiel : Preťaženie znamená, že má dve metódy tej istej triedy s rovnakým názvom a rôznymi typmi parametrov, zatiaľ čo preradené prostriedky majú dve rôzne metódy v rovnakej triede s rovnakými typmi parametrov, ale s rôznymi implementáciami.

Prvotné metódy a preťaženie sú dva pojmy alebo techniky používané v javových programovacích jazykoch. Obidva koncepty umožňujú programátorovi poskytovať rôzne implementácie pre metódy pod rovnakým názvom. Tento článok rozlišuje medzi dvoma konceptmi programovania.

Funkčné preťaženie alebo preťaženie metódy umožňuje vytvárať niekoľko metód pod rovnakým názvom, v rovnakej triede, ale navzájom odlišných vo vstupnom a výstupnom type funkcie. Je to jednoducho definované ako schopnosť jednej funkcie vykonávať rôzne úlohy.

Pri preťažení majú implementácie metód rovnaký názov, pretože vykonávajú podobné úlohy. Preťaženie je tiež považované za polymorfné. Funkcie s rôznymi implementáciami závisia od ich špecifikovaných typov argumentov. Zvyčajne sa spája so statickými programovacími jazykmi, ktoré presadzujú typovú kontrolu funkčných volaní. To je tiež považované za praktické, pretože umožňuje programátorovi napísať niekoľko rôznych metód v tej istej triede. Avšak pri preťažení runtime procesor zmení názov všetkých preťažených metód, čo môže byť problém.

Prepísanie metódy v objektovo orientovanom programovaní je funkcia, ktorá umožňuje triede podtriedy alebo podriadenej triedy poskytnúť špecifickú implementáciu metódy, ktorá je už poskytnutá jednou z jej super-tried alebo nadradených tried. Implementácia v podtriede nahrádza alebo nahradí implementáciu v materskej triede tým, že poskytuje metódu pod rovnakým názvom, rovnakými parametrami alebo podpisom a rovnakým typom návratu ako metóda v materskej triede.

Pri overovaní metód sú funkcie kódované na vykonávanie špecifických úloh v programe. Prepísanie závisí od prítomnosti funkcie základnej triedy pre jej vzhľad. Tu vykonanú funkciu určuje objekt, ktorý sa používa na jej vyvolanie, tj ak sa na vyvolanie metódy použije objekt nadradenej triedy, vykoná sa funkcia v nadradenej triede. Nadradený je polymorfný charakter; pomáha navrhovať programy založené na prvom implicitnom parametri, ktorý je možné vyriešiť za behu. Niektoré jazyky v jazyku Java umožňujú programátorovi zabrániť tomu, aby bola metóda prepísaná.

Porovnanie medzi preťažením a preradením:

preťaženie

prvoradý

definícia

Znamená to mať metódy tej istej triedy pod rovnakým názvom, ale každá metóda má rôzne parametre alebo má rovnaké parametre s rôznymi typmi a poradím.

To znamená mať podradnú triedu s rovnakými metódami pod rovnakým názvom a presne rovnaký typ parametrov a rovnaký typ návratu ako super trieda.

zmysel

Znamená to, že viac ako jedna metóda zdieľa rovnaký názov v rovnakej triede, ale má iný podpis.

Znamená to, že metóda základnej triedy je v odvodenej triede s rovnakým podpisom predefinovaná.

správanie

Pridáva alebo rozširuje správanie metód.

Zmení existujúce správanie metódy.

polymorfizmus

Je to kompilovaný časový polymorfizmus.

Je to polymorfizmus behu času.

Statická metóda

Statická metóda môže byť preťažená.

Statickú metódu nemožno prepísať.

dlhopis

Statická väzba.

Dynamická väzba.

dedičstvo

Môže alebo nemusí vyžadovať dedičstvo.

Vždy vyžaduje dedičnosť.

združenie

Zvyčajne sa spája so statickými programovými jazykmi.

Obvykle sa spája s programami orientovanými na objekt.

podpis

Metódy majú iný podpis.

Metódy musia mať rovnaký podpis.

rýchlosť

Je to rýchlejšie ako prevratné.

Je pomalá v porovnaní s preťažením.

vyučovanie

Pre preťaženie nevyžaduje viac ako jednu triedu.

Vyžaduje minimálne dve triedy na preťaženie.

hladina

Metódy môžu mať akúkoľvek úroveň prístupu.

Metódy majú rovnakú alebo širokú úroveň prístupu.

príklad

Pridať triedu

{

int suma (int a, int b)

{

vrátiť a + b;

}

int suma (int a)

{

vrátiť a + 10;

}

}

Trieda A // Super trieda

{

neplatné zobrazenie (int num)

{

print num;

}

}

Trieda B zdedí triedu A

Trieda B // Subkategória

{

neplatné zobrazenie (int num)

{

print num;

}

}

Odporúčaná

Súvisiace Články

  • populárne porovnania: Rozdiel medzi Nokia Lumia 928 a HTC Droid DNA

    Rozdiel medzi Nokia Lumia 928 a HTC Droid DNA

    Kľúčový rozdiel: Spoločnosť Nokia nedávno oznámila nový telefón do svojej zostavy. Lumia 928. Telefón je dodávaný s kapacitou obrazovky AMOLED s rozmermi 4, 5 palca so širokým zadným rámom. Telefón je pomerne objemný a ťažký, v porovnaní s inými novšími smartphonmi, ktoré sa zameriavajú na to, že sú tenšie a ľahšie. HTC Butterfly je špičkový telef
  • populárne porovnania: Rozdiel medzi plastom a elastickým

    Rozdiel medzi plastom a elastickým

    Kľúčový rozdiel : Hlavný rozdiel medzi plastovým telom a pružným telom je založený na individuálnej ich schopnosti získať opäť svoj tvar a veľkosť po aplikácii vonkajšej sily na telá. Elastické aj plastové materiály sú široko uplatniteľné a používané v oblasti vedy a techniky. Preto je ľahšie pochopiť tie
  • populárne porovnania: Rozdiel medzi škôlkou a nižšou materskou škôlkou

    Rozdiel medzi škôlkou a nižšou materskou škôlkou

    Kľúčový rozdiel: Materská a nižšia materská škola sú formy základného vzdelávania. Odlišujú sa v závislosti od vekovej skupiny detí, ktoré absolvujú, a akademických učebných osnov, ktoré sledujú. Detská škôlka je prvým krokom vzdelávania, že dieťa musí absolvovať svoju cestu k formálnemu vzdelávaniu. Školy vo všeobecnosti pripúšťajú
  • populárne porovnania: Rozdiel medzi armádou a námorníctvom

    Rozdiel medzi armádou a námorníctvom

    Kľúčový rozdiel: Termín "armáda" je odvodený z latinského slova "arma", čo znamená "zbrane" alebo "zbrane". Armáda je pozemná vojenská pobočka zodpovedná za riešenie hrozieb, ktorým čelí na zemi. Námorníctvo je zodpovedné za konflikt alebo hrozbu, ktorá je vo vodách krajiny. Armáda a námorníctvo s
  • populárne porovnania: Rozdiel medzi Townhouse a Duplex

    Rozdiel medzi Townhouse a Duplex

    Kľúčový rozdiel: Mestský dom je typom stredne hustého bývania v mestách, ktoré môžu byť terasovité alebo čiastočne oddelené. Moderný mestský dom, známy aj ako radový dom, je dom v rade domov, ktorý má malú stopu, ale má niekoľko poschodí. Na druhej strane, duplex je dom, ktorý sa vyznačuje bytmi, ktoré majú dva samostatné vchody pre dve rôzne rodiny. Duplex môže alebo nemusí mať t
  • populárne porovnania: Rozdiel medzi probačnosťou a parou

    Rozdiel medzi probačnosťou a parou

    Kľúčový rozdiel: Probačná sa týka stavu, keď trestný čin podáva trest v komunite, a nie vo väzení, zatiaľ čo prepustenie možno označiť ako podmienené predčasné prepustenie z väzenia a slúžiť v komunite. Obe tieto pojmy súvisia s páchateľmi a zločincami. Probačná doba sa vzťahuje na podmienku, keď trestný čin vykonáva trest v komunite a musí dodržiavať špecifické podmienky, zatiaľ čo prepustenie možno označiť ako podmienené predčasné prepustenie z väzenia slúžiace v spoločenstve a musí tiež dodržiavať určité podmienky. Pri pohľade na podobnosť dávajú páchateľovi možnosť vráti
  • populárne porovnania: Rozdiel medzi Hippie a Hipster

    Rozdiel medzi Hippie a Hipster

    Kľúčový rozdiel: Hippie je subkultúra, ktorá bola populárna v polovici šesťdesiatych rokov minulého storočia a bola pôvodne mládežnícke hnutie, ktoré sa v Spojených štátoch stalo počas vojny vo Vietname. Hipster je subkultúra, ktorá sa vzťahuje na skupinu ľudí, ktoré sú hodnotovo nezávislé myslenie, protikultúra, progresívna politika, ocenenie umenia a indie-rock, tvorivosť, inteligencia a vtipný banter. Pojmy hipster a hippie sú popul
  • populárne porovnania: Rozdiel medzi ZIP a TAR

    Rozdiel medzi ZIP a TAR

    Rozdiel kľúčov: ZIP je formát súboru pre kompresiu dát a archív. Zatiaľ čo TAR je konsolidovaný súbor archívu Unix. TAR bola navrhnutá pre počítače Unix, ale teraz je k dispozícii mnoho softvérov, ktoré čítajú formát TAR. ZIP formát bol vytvorený Phil Katz v roku 1989. ".zip" alebo ".Z
  • populárne porovnania: Rozdiel medzi HDP a HNP

    Rozdiel medzi HDP a HNP

    Hlavný rozdiel: HDP aj HNP sa používajú na meranie veľkosti a sily hospodárstva. Odlišujú sa však od ich použitia a od prvkov, ktoré tvoria. V modernom svete sú ekonomiky vždy v rukách loggerheads a snažia sa navzájom uzurpovať z trónu, že sú najprogresívnejšou alebo najziskovejšou ekonomikou na svete. Aby sa to stalo, musí

Redakcia Choice

Rozdiel medzi dokončením a nad

Kľúčový rozdiel: Slová ako koniec a koniec sú všeobecne brané do rovnakého kontextu. Slovami, ako je 'dokončiť', sa rozumie dokončenie príslušnej úlohy alebo obsahu, zatiaľ čo "na prekonanie" znamená skončiť s čímkoľvek, alebo sa môže dokonca úplne dokončiť. Podmienky, dokončiť a skon