Mi a különbség a módszer túlterhelése és felülírása között?



Ez a cikk különféle példákkal foglalkozik a módszer túlterhelésének és a java felülbírálásának fő különbségeivel, beleértve a szuper kulcsszót és a különféle szabályokat.

A Java programozási nyelv a legjobb választás . Olyan fogalmakkal, mint osztályok , , , stb., rendkívül könnyűvé válik vele dolgozni . A könnyű hozzáférés és az egyszerű szintaxis hatékonyabbá és kevésbé komplexé teszi a kódot. Ebben a cikkben megismerhetjük a Java túlterhelését és felülírását. A következő témaköröket tárgyaljuk ebben a blogban:

Mi a módszer túlterhelése a Java-ban?

A módszer túlterhelése lehetővé teszi, hogy a metódus azonos nevű legyen, amely argumentumok vagy argumentumtípusok alapján különbözik. Összefügghet a fordítási idejű polimorfizmussal. Az alábbiakban bemutatunk néhány olyan szempontot, amelyet szem előtt kell tartanunk, miközben túlterheljük a módszereket a Java-ban.





  • Nem tudjuk túlterhelni a visszatérési típust.

  • Bár túlterhelhetjük , az argumentumoknak vagy a bemeneti paramétereknek különbözniük kell.



  • Két módszert nem tudunk túlterhelni, ha csak statikus kulcsszó különbözik egymástól.

  • Más statikus módszerekhez hasonlóan a main () metódus is túlterhelhető.

módszer túlterhelése - módszer túlterhelése és felülbírálása java- edurekában



Vessünk egy pillantást egy egyszerű programra, hogy megértsük, hogyan működik a módszer túlterhelése a pythonban.

nyilvános osztály Div {public int div (int a, int b) {return (a / b)} public int div (int a, int b, int c) {return ((a + b) / c)} public static void main (String args []) {Div ob = new Div () ob.div (10, 2) ob.div (10, 2, 3)}}
 Kimenet: 5 4

A fenti programban két módszerünk van, azonos névvel, de eltérő paraméterekkel. Így működik a túlterheléses módszer .

Miért módszer túlterhelés?

A módszer túlterhelésének fő előnye a Java-ban az, hogy megadja nekünk a szabadságot, hogy ne határozzunk meg újra és újra egy függvényt ugyanazon dolog elvégzéséhez. Az alábbi példában a két módszer alapvetően osztást hajt végre, így ugyanazzal a névvel, de különböző paraméterekkel különböző módszereket alkalmazhatunk. Segít a fordítási idejű polimorfizmusban is.

A main () metódus túlterhelése:

Az alábbiakban bemutatunk egy példát a main () metódus túlterhelésére a java-ban.

public class Edureka {public static void main (String [] args) {System.out.println ('hello') Edureka.main ('edurekan')} public static void main (String arg1) {System.out.println (' welcome '+ arg1) Edureka.main (' welcome ',' to edureka ')} public static void main (String arg1, String arg2) {System.out.println (' hello ', + arg1, + arg2)}}
 Kimenet: helló üdvözlet edurekan hello, üdvözlet az edureka-ban

Példák a módszer túlterhelésére

  • Program a statikus módszerek túlterhelésére a java-ban.
public class Test {public static int func (int a) {return 100} public static char func (int a, int b) {return 'edureka'} public static void main (String args []) {System.out.println ( func (1)) System.out.println (func (1,3))}}
 Kimenet: 100 edureka
  • Program három módszer azonos nevű túlterhelésére.
public class Add {public int add (int a, int b) {return (a + b)} public int add (int a, int b, int c) {return (a + b + c)} public double add (double a, kettős b) {return (a + b)} public static void main (String args []) {Add ob = new Add () ob.add (15,25) ob.add (15,25,35) ob .add (11.5, 22.5)}}
 Kimenet: 40 75 34

Mi a módszer felülírja a Java-t?

Az öröklődés a java-ban magában foglalja a szülő és a gyermek osztályainak kapcsolatát. Amikor mindkét osztály azonos nevű metódusokat és argumentumokat vagy paramétereket tartalmaz, akkor biztos, hogy az egyik módszer felülírja a másik metódust a végrehajtás során. A végrehajtandó módszer az objektumtól függ.

Ha a gyermek osztály objektum meghívja a metódust, a gyermek osztály metódus felülírja a szülő osztály metódust. Ellenkező esetben, ha a szülő osztály objektum meghívja a metódust, a szülő osztály metódus végrehajtásra kerül.

A módszer felülbírálása szintén segíti a futásidejű polimorfizmus Java-ban történő megvalósítását. Vegyünk egy egyszerű példát annak megértésére, hogy a módszer felülírása hogyan működik a java-ban.

osztály Szülő {void view () {System.out.println ('ez egy szülő osztály módszer)}} class Child kiterjeszti a Szülő {void view () {System.out.println (' ez egy gyermek osztály metódus}}} public static void main (String args []) {Szülő ob = új Szülő () ob.view () Szülő ob1 = új Gyerek () ob1.view ()
 Kimenet: ez gyermekosztályos módszer

A módszer felülírására vonatkozó szabályok

  • Az hozzáférés a szerkesztéshez csak több hozzáférést engedélyezhet az felülbírált módszerhez.

  • NAK NEK végső A módszer nem támogatja a módszer felülírását.

  • A statikus módszer nem írható felül.

  • A privát módszereket nem lehet felülírni.

  • Az elsőbbségi módszer visszatérési típusának meg kell egyeznie.

  • Meghívhatjuk a szülő osztály metódust az felülbíráló módszerben a super kulcsszó segítségével.

  • NAK NEK építész nem lehet felülbírálni, mert egy gyermek osztály és egy szülő osztály nem rendelkezhet azonos nevű konstruktorral.

Módszer felülbíráló példa

  • Program felülírók megjelenítésére szuper kulcsszóval
osztály Szülő {void show () {System.out.println ('szülő osztály módszer')} osztály Gyermek kiterjeszti a Szülő {void show () {super.show () System.out.println ('gyermek osztály módszer')} public static void main (String args []) {Szülő ob = new Child () ob.show ()}}
 Kimenet: szülő osztály módszer gyermek osztály módszer

Túlterhelés vs felülbírálás: Különbség a módszer túlterhelése és a módszer felülírása között

Az alábbiakban bemutatjuk a legfontosabb különbségeket a módszer túlterhelése és a Java felülbírálása között.

Módszer Túlterhelés Módszer felülírása
  • A program olvashatóságának növelésére szolgál
  • Biztosítja a módszer konkrét megvalósítását már a szülő osztályban
  • Ugyanabban az osztályban zajlik
  • Több osztályt foglal magában
  • A paramétereknek túlterhelés esetén eltérőeknek kell lenniük
  • A paramétereknek felülírás esetén azonosaknak kell lenniük
  • Példa a fordítási idejű polimorfizmusra
  • Ez a futásidejű polimorfizmus példája
  • A visszatérés típusa eltérő lehet, de meg kell változtatnia a paramétereket is.
  • A visszatérés típusának felülírásban azonosnak kell lennie
  • A statikus módszerek túlterhelhetők
  • Az elsőbbség nem jár statikus módszerekkel.

Ebben a blogban részletesen megvitattuk a módszer túlterhelését és a módszer felülírását. Osztályok, objektumok és fogalmak, például az öröklés és a polimorfizmus bevonásával meglehetősen fontossá válik, hogy világos képet kapjunk arról, mit jelent a módszerek túlterhelése vagy felülírása a java-ban.

mi gyári angularjs-ban

A Java programozási nyelv az objektum-orientált programozás csúcsa, és rengeteg alkalmazást tartalmaz. A kereslet és a népszerűség mellett a törekvő java fejlesztőknek jártasnak kell lenniük a programozási nyelv alapvető fogalmaival kapcsolatban. Iratkozzon be az Edureka's-ba hogy elindítsa a tanulást.

Van egy kérdésünk? kérjük, említse meg ezt a cikk megjegyzéseket tartalmazó szakaszában: „A módszer túlterhelése vs a módszer felülbírálása a java-ban”, és amint lehetséges, kapcsolatba lépünk Önnel.