Razlika između preopterećenja i poništavanja u Javi

Ključna razlika : Preopterećenje znači imati dvije metode istog razreda s istim imenom i različitim vrstama parametara, dok nadjačavanje znači imati dvije različite metode u istoj klasi s istim vrstama parametara, ali s različitim implementacijama.

Prekoračenje i preopterećenje metoda su dva koncepta ili tehnike koji se koriste u programskim jezicima java. Oba koncepta omogućuju programeru da osigura različite implementacije za metode pod istim imenom. Ovaj članak razlikuje dvije koncepcije programiranja.

Preopterećenje funkcija ili preopterećenje metode omogućuje stvaranje nekoliko metoda pod istim imenom, u istoj klasi, ali se međusobno razlikuju u ulaznom i izlaznom tipu funkcije. Jednostavno se definira kao sposobnost jedne funkcije da obavlja različite zadatke.

U preopterećenju implementacije metoda dijele isto ime jer obavljaju slične zadatke. Također, preopterećenje se smatra polimorfnom u prirodi. Funkcije koje imaju različite implementacije ovise o njihovim specificiranim vrstama argumenata. Obično se povezuje sa statičkim programskim jezicima koji provode provjeru tipa u pozivima funkcija. Također se smatra praktičnim jer omogućuje programeru da napiše nekoliko različitih metoda u istom razredu. Međutim, u preopterećenju izvršnog procesora mijenja se ime svih preopterećenih metoda, što može biti problem.

Nadjačavanje metoda, u objektno orijentiranom programiranju, je značajka koja dopušta podklasi ili podređenoj klasi da pruži specifičnu implementaciju metode koja je već osigurana u jednoj od njegovih nad-klasa ili roditeljskih klasa. Implementacija u potklasi nadjačava ili zamjenjuje implementaciju u roditeljskoj klasi osiguravanjem metode pod istim imenom, istim parametrima ili potpisom i istim povratnim tipom kao metoda u roditeljskoj klasi.

Kod nadjačavanja metoda, funkcije se kodiraju za izvršavanje određenih zadataka u programu. Prekoračenje ovisi o prisutnosti osnovne klase za njezin izgled. Ovdje izvršena funkcija određena je objektom koji se koristi za pozivanje, tj. Ako se objekt roditeljske klase koristi za pozivanje metode, tada će se izvršiti funkcija u roditeljskoj klasi. Preokret je u prirodi polimorfan; pomaže u dizajniranju programa na temelju prvog implicitnog parametra, koji se može riješiti tijekom izvođenja. Postoje neki jezici u Java dopuštaju programer da spriječi metodu da bude nadjačana.

Usporedba između preopterećenja i poništavanja:

preopterećenje

najvažniji

definicija

To znači imati metode iste klase pod istim imenom, ali svaka metoda ima različite parametre ili ima iste parametre s različitim vrstama i redoslijedom.

To znači imati pod-klasu s istim metodama pod istim imenom i točno istu vrstu parametara i isti povratni tip kao super klasa.

Značenje

To znači da više od jedne metode dijele isto ime u istoj klasi, ali imaju drugačiji potpis.

To znači da je metoda osnovne klase ponovno definirana u izvedenoj klasi s istim potpisom.

Ponašanje

Dodaje ili proširuje ponašanje metoda.

Ona mijenja postojeće ponašanje metode.

polimorfizam

To je polimorfizam vremena sastavljanja.

To je polimorfizam izvođenja.

Statička metoda

Statička metoda može biti preopterećena.

Statička metoda se ne može zamijeniti.

Veza

Statična veza.

Dinamička veza.

baština

Može ili ne mora zahtijevati nasljeđivanje.

Uvijek zahtijeva nasljedstvo.

asocijacija

Obično se povezuje sa statičkim programskim jezicima.

Obično je to povezano s objektno orijentiranim programima.

Potpis

Metode imaju drugačiji potpis.

Metode moraju imati isti potpis.

Ubrzati

To je brže nego prebrzo.

Spor je u odnosu na preopterećenje.

klase

Ne zahtijeva više od jedne klase za preopterećenje.

To zahtijeva najmanje dvije klase za preopterećenje.

nivo

Metode mogu imati bilo koju razinu pristupa.

Metode imaju istu ili široku razinu pristupa.

Primjer

Class Add

{

int sum (int a, int b)

{

return a + b;

}

int sum (int a)

{

vrati + 10;

}

}

Klasa A // Super klasa

{

void display (int num)

{

print num;

}

}

// Klasa B nasljeđuje klasu A

Klasa B // Podklasa

{

void display (int num)

{

print num;

}

}

Preporučeno

Vezani Članci

  • razlika između: Razlika između NAFTA i EU

    Razlika između NAFTA i EU

    Ključna razlika: NAFTA je trilateralni trgovinski blok utemeljen na pravilima u Sjevernoj Americi koji ima 3 člana. Europska unija je politički-ekonomski sporazum između 28 zemalja koje uglavnom žive u Europi. NAFTA i EU su dva najčešće čujuća trgovinska bloka širom svijeta. NAFTA, također poznata kao Sjevernoamerička udruga slobodne trgovine, sporazum je između tri zemlje: Meksika, Kanade i Sjedinjenih Država. Međutim, EU i
  • razlika između: Razlika između Asus FonePad i Nexus 10

    Razlika između Asus FonePad i Nexus 10

    Ključna razlika: Asus je najavio najnoviji phablet, Asus Fonepad. Fonepad je 7-inčni Android tablet koji korisnicima omogućuje i upućivanje telefonskih poziva postavljanjem uređaja na uho. Phablet ima 7-inčni zaslon osjetljiv na dodir s IPS LED pozadinskim osvjetljenjem koji je omogućio multitouch do 10 osoba. Zaslo
  • razlika između: Razlika između zbogom i zbogom

    Razlika između zbogom i zbogom

    Ključna razlika: Izrazi 'bye' i 'goodbye' su prilično slični. Obje su frazne fraze, što znači da se koriste kada se ljudi razilaze, tj. Idu svojim putem. Čini se da je 'zbogom' previše formalan, dok je 'zbogom' skraćeni i manje formalni način kazivanja 'zbogom'. Izrazi
  • razlika između: Razlika između aluminijske folije i aluminijske folije

    Razlika između aluminijske folije i aluminijske folije

    Ključna razlika: Aluminijska folija je tanak sloj aluminija debljine manje od 0, 2 milimetra i može se koristiti za različite stvari oko kuće. Limena folija je tanak list folije od kositra. To je najčešća vrsta ambalaže i izolacijskog materijala korištenog prije Drugog svjetskog rata, nakon čega je aluminij postao najjeftiniji materijal i otišao u masovnu proizvodnju. Aluminijs
  • razlika između: Razlika između uljane repice i biljnog ulja

    Razlika između uljane repice i biljnog ulja

    Ključna razlika: Canola i biljno ulje su biljna kuhanja prirodnih ulja dobivenih iz njihovih izvora, naime. uljane repice i drugi biljni izvori kao što su orašasti plodovi, mahunarke, sjemenke i bilje. Ulje kanole je zdravije od biljnog ulja zbog sadržaja omega3 i omega 6. Iako, biljna ulja se sastoji od velikih sorti, koje su za njihovu perspektivu zdravstvene koristi. Ko
  • razlika između: Razlika između zubnog konca i trake

    Razlika između zubnog konca i trake

    Ključna razlika: Zubni konac je izrađen od jednostrukog lanca ili različitih vlakana poput najlona, ​​gume, plastike itd. Koristi se za uklanjanje čestica hrane i plaka između zuba. Zubne trake su deblje u usporedbi s konvencionalnim vrstama konca i obično se koriste za široko razmaknute zube. Zubni kon
  • razlika između: Razlika između esencije i ekstrakta

    Razlika između esencije i ekstrakta

    Ključna razlika: esencija i ekstrakt su i aromatični sastojci. Ekstrakt se dobiva kombiniranjem ulja iz sastojka s alkoholom. To stvara stabilnu, dugotrajnu aromu. Suština, s druge strane, može imati dva različita značenja. To može biti imitacija ekstrakta ili može biti visoko koncentrirani oblik čistog ekstrakta. Esencij
  • razlika između: Razlika između Dell Latitude 10 Windows Tablet i Samsung Galaxy Note 10.1

    Razlika između Dell Latitude 10 Windows Tablet i Samsung Galaxy Note 10.1

    Ključ razlika: Latitude 10 tableta je prilično gladak i lagan na 658 grama. Uređaji dolaze s 10, 1-inčnim IPS (1366 X 768) širokim kutom LCD zaslona osjetljivim na dodir, a napaja ga procesor Intel Atom Z2760 od 1, 8 GHz. Galaxy Note 10.1 je tablet računalo dizajnirano i proizvedeno od strane Samsunga. Ima
  • razlika između: Razlika između RAM-a i SRAM-a

    Razlika između RAM-a i SRAM-a

    Ključna razlika: RAM je kratica za Random Access Memory. SRAM je kratica za Static Random Access Memory. RAM je nepostojan tip memorije koji je najosnovniji oblik memorije koji se koristi u računalnim sustavima. SRAM je vrsta RAM-a koja zadržava svoj sadržaj dok se ne poveže napajanje. Ne mora se redovito osvježavati kao DRAM. SRAM

Izbor Urednika

Razlika između ebole i Marburga

Ključna razlika: I virus ebole i virus Marburg su tipovi virusa hemoragijske groznice koji uzrokuju teške bolesti kod ljudi. Njihovi su simptomi gotovo identični jedan drugome, što otežava dijagnozu. I virus ebole i virus Marburg su tipovi virusa hemoragijske groznice koji uzrokuju ozbiljne bolesti kod ljudi. Dok