Rozdiel medzi preťažením a prepísaním v Jave

Kľúčový rozdiel - preťaženie vs Prelínanie v Jave
 

Objektovo orientované programovanie (OOP) je hlavným vzorom vo vývoji softvéru. Je to metodika navrhovania programu pomocou tried a objektov. Trieda je plán. Popisuje, čo by malo obsahovať v objekte. Definuje vlastnosti alebo atribúty a metódy, z ktorých by mal objekt pozostávať. Preto je objekt inštanciou triedy. Tieto objekty komunikujú s inými objektmi. Jedným z hlavných konceptov OOP je polymorfizmus. Je to schopnosť objektu správať sa niekoľkými spôsobmi. Polymorfizmus je rozdelený do dvoch častí, ktoré sú preťažené a prvoradé. Tento článok pojednáva o rozdieloch medzi týmito dvoma v Java. kľúčový rozdiel medzi preťažením a potlačením v Jave je to Preťaženie je schopnosť vytvárať viac rovnakých metód s rôznymi implementáciami a prvoradou úlohou je implementácia metódy podtriedy, ktorá už existuje v nadtriede..

OBSAH

1. Prehľad a kľúčový rozdiel
2. Čo je preťaženie v jazyku Java
3. Čo je v jazyku Java prvoradé
4. Podobnosti medzi preťažením a potlačením v Jave
5. Porovnanie bok po boku - preťaženie verzus prekonanie v Jave v tabuľkovej forme
6. Zhrnutie

Čo je preťaženie v Jave?

Preťaženie je schopnosť vytvárať viac rovnakých metód s rôznymi implementáciami. Postupujte podľa nižšie uvedeného kódu Java.

Obrázok 01: Program Java, ktorý vysvetľuje preťaženie rôznymi argumentmi

Podľa vyššie uvedeného programu, trieda A obsahuje dve metódy s rovnakým názvom. Metóda prvého súčtu má dva parametre. Druhá metóda súčtu má tri parametre. Pri vytváraní objektu typu A a volajúceho súčtu (2,3) sa bude volať metóda súčtu s dvoma parametrami, ktoré sú súčet (int a, int b) a vráti 5. Pri vytváraní objektu typu A a volania súčtu (2) , 3,4), zavolá metódu druhej sumy s tromi parametrami, ktorými je súčet (int a, int b, int c) a vráti 9.

Názov metódy je rovnaký, ale počet parametrov sa líši. Je možné pozorovať, že ten istý objekt sa správa odlišne. Tento koncept sa nazýva preťaženie. Označuje sa aj ako Statická väzba alebo Zostavuje časovú polymorfizmus.

Môže dôjsť k preťaženiu rôznymi typmi údajov. Postupujte podľa nižšie uvedeného kódu Java.

Obrázok 02: Program Java, ktorý vysvetľuje preťaženie rôznymi argumentmi

Podľa vyššie uvedeného programu pozostáva trieda A z dvoch metód s rovnakým názvom. Súčet sum (int a, b) prijíma dve celočíselné hodnoty. Súčet (dvojitý a dvojitý b) prijíma dve dvojité hodnoty. Pri vytváraní objektu typu A a volania súčtu (2,3) bude volať súčet (int a, int b) a vráti hodnotu 5. Pri volaní súčtu (3.4, 5.6) sa bude volať súčet (double a double b) a vráti hodnotu 9.0. V tomto príklade majú metódy rovnaký názov, ale iný typ premenných. To je tiež preťaženie.

Čo je v jazyku Java prvoradé?

V Jave je možné vytvárať podtriedy s už existujúcimi triedami. Namiesto vytvárania novej triedy od začiatku je možné použiť vlastnosti a metódy už existujúcej triedy. Existujúca trieda je nadtrieda a odvodená trieda je podtrieda. Keď podtrieda poskytuje implementáciu metódy, ktorá je už v nadtriede, je známa ako nadradená. Pozrite si program Java uvedený nižšie.

Obrázok 03: Program Java na prepísanie

Podľa vyššie uvedeného programu má trieda A zobrazenie metódy (). Trieda B sa rozprestiera od triedy A, takže vlastnosti a metódy triedy A sú prístupné pre triedu B. Trieda B má zobrazenie metódy () so špecifickou implementáciou. Pri vytváraní objektu typu A a volaní metódy zobrazenia dá výstup B. Aj keď trieda A má metódu displeja, prepíše sa metóda zobrazenia triedy B. Podtrieda implementuje metódu, ktorá už existuje v nadtriede.

Tento koncept je typom polymorfizmu a je známy ako prvoradý. Nazýva sa aj ako Neskoré viazanie, Dynamické viazanie, Polymorfizmus za behu.

Aké sú podobnosti medzi preťažením a potlačením v Jave?

  • Oba typy sú polymorfizmom.
  • Pri preťažení a potlačení majú metódy rovnaký názov.

Aký je rozdiel medzi preťažením a potlačením v Jave?

Preťaženie verzus Overriding v Jave

Preťaženie v Jave je schopnosť vytvárať viac rovnakých metód s rôznymi implementáciami. Prekrývanie v Java poskytuje špecifickú implementáciu v metóde podtriedy pre metódu, ktorá už existuje v nadtriede.
 parametre
Pri preťažení majú metódy rovnaký názov, ale odlišný počet parametrov alebo iný typ parametrov. Pri potlačení majú metódy rovnaký názov a parametre musia byť rovnaké.
témy
K preťaženiu dochádza v rámci triedy. K prevahe dochádza v rámci dvoch tried, ktoré majú dedičský vzťah.
 synonymá
Preťaženie sa nazýva kompilovaný polymorfizmus času. Prvoradý je tzv. Run-time polymorfizmus.

Zhrnutie - preťaženie vs Prelínanie v Jave

Polymorfizmus je hlavným konceptom objektovo orientovaného programovania. Poskytuje objektu schopnosť správať sa niekoľkými spôsobmi. Môže to byť buď preťaženie, alebo prekonanie. Preťaženie je polymorfizmus kompilácie a prvoradý polymorfizmus. Sú užitočné pri vývoji softvérových aplikácií. Rozdiel medzi prepísaním a preťažením je v tom, že pretaženie je schopnosť vytvárať viac rovnakých metód s rôznymi implementáciami a Overriding poskytuje špecifickú implementáciu v metóde podtriedy pre metódu, ktorá už existuje v nadtriede. V Jave je možné implementovať preťaženie aj potlačenie.

Stiahnite si súbor Java Overloading vs Overriding v jazyku Java

Môžete si stiahnuť verziu tohto článku vo formáte PDF a použiť ju na účely offline podľa citácie. Stiahnite si verziu PDF tu Rozdiel medzi preťažením a prepísaním v Jave

referencie:

1.tutorialspoint.com. „Prepísanie jazyka Java.“ Bod. K dispozícii tu 
2. „Preťaženie metód v Java - Javatpoint.“ K dispozícii tu
3. „Prepísanie metód v Java - javatpoint.“ K dispozícii tu