Erinevus Java ülekoormamise Ja Alistamise Vahel

Sisukord:

Erinevus Java ülekoormamise Ja Alistamise Vahel
Erinevus Java ülekoormamise Ja Alistamise Vahel

Video: Erinevus Java ülekoormamise Ja Alistamise Vahel

Video: Erinevus Java ülekoormamise Ja Alistamise Vahel
Video: Android 101 by Fred Widjaja 2024, Aprill
Anonim

Põhierinevus - ülekoormamine vs Java-s ülekäimine

Objektorienteeritud programmeerimine (OOP) on tarkvaraarenduse peamine paradigma. See on metoodika programmi kujundamiseks klasside ja objektide abil. Klass on plaan. See kirjeldab, mida objekt peaks sisaldama. See määratleb omadused või atribuudid ja meetodid, millest objekt peaks koosnema. Seetõttu on objekt klassi eksemplar. Need objektid suhtlevad teiste objektidega. OOP üks peamisi mõisteid on polümorfism. See on objekti võime käituda mitmel viisil. Polümorfism on liigitatud kahte ossa, mis on ülekoormatud ja ülekaalukad. Selles artiklis käsitletakse nende kahe erinevust Java-s. Peamine erinevus Java-i ülekoormamise ja ülekandmise vahel on see, et ülekoormamine on võime luua mitu samanimelist meetodit erinevate rakendustega ja ülekirjutamine on pakkuda rakendust alaklassimeetodile, mis on juba olemas superklassis.

SISU

1. Ülevaade ja peamised erinevused

2. Mis on Java-s ülekoormamine

3. Mis on Java-s ülimuslik?

4. Java-i ülekoormamise ja alistamise sarnasused

5. Kõrvuti võrdlus - ülekoormus vs Java-i alistamine tabelina

6. Kokkuvõte

Mis on Java ülekoormamine?

Ülekoormamine on võime luua mitu samanimelist meetodit erinevate rakendustega. Vaadake allpool olevat Java-koodi.

Erinevus Java ülekoormamise ja alistamise vahel
Erinevus Java ülekoormamise ja alistamise vahel

Joonis 01: Java-programm, mis selgitab ülekoormamist erinevate argumentide arvuga

Vastavalt ülaltoodud programmile sisaldab klass A kahte sama nimega meetodit. Esimese summa meetodil on kaks parameetrit. Teise summa meetodil on kolm parameetrit. Kui loote A-tüüpi objekti ja helistate summa (2,3), kutsub see summa-meetodit kahe parameetriga, mis on summa (int a, int b) ja tagastab 5. A-tüüpi objekti loomisel ja summa (2) kutsumisel, 3,4), kutsub see kolme parameetriga teist summameetodit, mis on summa (int a, int b, int c) ja tagastab 9.

Meetodi nimi on sama, kuid parameetrite arv on erinev. Võib täheldada, et sama objekt käitub erinevalt. Seda mõistet nimetatakse ülekoormuseks. Seda nimetatakse ka staatiliseks sidumiseks või kompileeritud ajapolümorfismiks.

Neid võib ka üle koormata erinevate andmetüüpidega. Vaadake allpool olevat Java-koodi.

Erinevus ülekoormuse ja alistamise vahel Java Figure 02-s
Erinevus ülekoormuse ja alistamise vahel Java Figure 02-s

Joonis 02: Java-programm, mis selgitab ülekoormamist erinevate argumentide arvuga

Vastavalt ülaltoodud programmile koosneb A klass kahest samanimelisest meetodist. Summa (int a, int b) meetod saab kaks täisarvu. Summa (topelt topelt b) saab kaks topeltväärtust. A-tüüpi objekti loomisel ja summa (2,3) väljakutsumisel kutsub see summa (int a, int b) ja tagastab väärtuse 5. Summa (3.4, 5.6) väljakutsumisel kutsub see summa (double double b) ja tagastab väärtuse 9,0. Selles näites on meetoditel sama nimi, kuid erinevat tüüpi muutujad. See on ka ülekoormus.

Mis on Java-s ülimuslik?

Java-s on võimalik juba olemasolevate klassidega ehitada alaklasse. Uue klassi algusest peale loomise asemel on võimalik kasutada juba olemasoleva klassi omadusi ja meetodeid. Olemasolev klass on superklass ja tuletatud klass on alaklass. Kui alaklass pakub juba superklassis oleva meetodi rakendamist, on see tuntud kui ülimuslik. Vaadake allolevat Java-programmi.

Peamine erinevus Java ülekoormamise ja alistamise vahel
Peamine erinevus Java ülekoormamise ja alistamise vahel

Joonis 03: Java-programm alistamiseks

Vastavalt ülaltoodud programmile on A-klassil meetodi kuvamine (). Klass B ulatub klassist A, seega on klassi A omadustele ja meetoditele juurdepääsetav klass B. Klass B-l on konkreetse rakendusega meetodinäidik (). Kui loote tüübi A objekti ja helistate kuvamismeetodile, annab see väljundi B. Kuigi A-klassil on kuvamismeetod, tühistatakse see B-klassi kuvamismeetodina. Alamklass rakendab meetodit, mis on superklassis juba olemas.

See mõiste on teatud tüüpi polümorfism ja tuntud kui ülekaalukas. Seda nimetatakse ka hiliseks sidumiseks, dünaamiliseks sidumiseks, käituse polümorfismiks.

Millised on Java-s ülekoormamise ja ülekaalustamise sarnasused?

  • Mõlemad on polümorfismi tüübid.
  • Ülekoormamisel ja ülekandmisel on meetoditel sama nimi.

Mis vahe on Java-s ülekoormamise ja alistamise vahel?

Erinev artikkel keskel enne tabelit

Ülekoormus vs ülekaal Java-s

Java ülekoormamine on võime luua mitu samanimelist meetodit erinevate rakendustega. Java-s ülimuslik on konkreetne juurutamine alamklassimeetodis, kuna superklassis on meetod juba olemas.
Parameetrid
Ülekoormuse korral on meetoditel sama nimi, kuid erinev arv parameetreid või erinevat tüüpi parameetrid. Ülekaalukalt on meetoditel sama nimi ja parameetrid peavad olema samad.
Teemad
Ülekoormus toimub klassi sees. Ülekirjutamine toimub kahes klassis, millel on pärilussuhe.
Sünonüümid
Ülekoormust nimetatakse kompileeritud ajapolümorfismiks. Ülekandmist nimetatakse tööaja polümorfismiks.

Kokkuvõte - ülekoormus vs ülekaal Java-s

Polümorfism on objektorienteeritud programmeerimise peamine mõiste. See annab objektile võimaluse käituda mitmel viisil. See võib olla nii ülekoormus kui ka ülekaal. Ülekoormus on kompileerimisaja polümorfism ja ülekaal on käituse polümorfism. Need on kasulikud tarkvararakenduste arendamisel. Alistamise ja ülekoormamise vahe seisneb selles, et ülekoormamine on võime luua mitu samanimelist meetodit erinevate rakendustega ja ülekäimine pakub konkreetset rakendamist alamklassimeetodis, kuna meetod on üleklassis juba olemas. Java-s on võimalik rakendada nii ülekoormamist kui ka ülekaalu.

Laadige alla Java-faili PDF-i ülekoormus vs ülekaal

Selle artikli PDF-versiooni saate alla laadida ja kasutada võrguühenduseta eesmärkidel, nagu tsiteeritud. Laadige siit alla PDF-versioon. Erinevus Java ülekoormamise ja alistamise vahel

Soovitatav: