Kuo skiriasi metodo perkrova ir nepaisymas?



Šiame straipsnyje aprašomi pagrindiniai „Java“ metodo perkėlimo ir nepaisymo skirtumai, pateikiant įvairius pavyzdžius, įskaitant super raktinį žodį ir įvairias taisykles.

„Java“ programavimo kalba yra geriausias pasirinkimas . Su tokiomis sąvokomis kaip klasės , , , ir tt, su juo dirbti yra labai lengva . Lengva prieiga ir lengva sintaksė daro kodą efektyvų ir ne tokį sudėtingą. Šiame straipsnyje mes sužinosime apie metodo perkrovą ir nepaisymą „Java“. Toliau pateikiamos šiame tinklaraštyje aptariamos temos:

Kas yra „Java“ metodo perkrova?

Metodo perkrova leidžia metodui suteikti tą patį pavadinimą, kuris skiriasi pagal argumentus ar argumentų tipus. Tai gali būti siejama su kompiliavimo laiko polimorfizmu. Toliau pateikiami keli patarimai, kuriuos turime nepamiršti perkraukdami „Java“ metodus.





  • Mes negalime perkrauti grąžinimo tipo.

  • Nors galime perkrauti , argumentai ar įvesties parametrai turi būti skirtingi.



  • Negalime perkrauti dviejų metodų, jei jie skiriasi tik pagal statinį raktinį žodį.

  • Kaip ir kiti statiniai metodai, pagrindinis () metodas taip pat gali būti perkrautas.

metodo perkrova - metodo perkrova ir nepaisymas javaedurekoje



Pažvelkime į paprastą programą, kad suprastume, kaip metodo perkrova veikia pitone.

viešoji klasė 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 pagrindinis (eilutės argumentai []) {Div ob = naujas Div () ob.div (10, 2) ob.div (10, 2, 3)}}
 Išvestis: 5 4

Pirmiau pateiktoje programoje mes turime du metodus su tuo pačiu pavadinimu, bet skirtingais parametrais. Taip veikia perkrovos metodas .

Kodėl metodas perkraunamas?

Pagrindinis metodo perkrovos naudojimo „Java“ privalumas yra tas, kad tai suteikia mums laisvę ne kartą apibrėžti funkciją tam pačiam veiksmui atlikti. Žemiau pateiktame pavyzdyje du metodai iš esmės atlieka padalijimą, todėl galime turėti skirtingus metodus tuo pačiu pavadinimu, bet su skirtingais parametrais. Tai taip pat padeda sudaryti laiko polimorfizmą.

susietų sąrašų programa c

Pagrindinio () metodo perkrova:

Toliau pateikiamas pavyzdys, kaip perkrauti „Java“ pagrindinį () metodą.

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 (' sveiki '+ arg1) Edureka.main (' welcome ',' to edureka ')} public static void main (String arg1, String arg2) {System.out.println (' labas ', + arg1, + arg2)}}
 Išvestis: sveiki sveiki edurekan sveiki, sveiki atvyke i edureka

Metodo perkrovos pavyzdžiai

  • Programa perkrauti statinius metodus Java.
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))}}
 Išvestis: 100 edureka
  • Programa perkrauti tris metodus tuo pačiu pavadinimu.
public class Pridėti {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, dvigubas b) {return (a + b)} public static void main (String args []) {Pridėti ob = naujas Pridėti () ob.add (15,25) ob.add (15,25,35) ob .add (11.5, 22.5)}}
 Išvestis: 40 75 34

Kas yra „Java“ metodas svarbesnis?

Paveldėjimas java apima santykius tarp tėvų ir vaikų klasių. Kai abiejose klasėse yra metodai su tuo pačiu pavadinimu ir argumentais ar parametrais, yra tikra, kad vykdymo metu vienas iš metodų pakeis kitą metodą. Metodas, kuris bus vykdomas, priklauso nuo objekto.

Jei vaikas klasės objektas iškviečia metodą, vaikas klasės metodas pakeis tėvų klasės metodą. Kitu atveju, jei pagrindinis klasės objektas iškviečia metodą, bus vykdomas pagrindinis klasės metodas.

Metodo nepaisymas taip pat padeda įgyvendinti Java vykdymo laiko polimorfizmą. Paimkime paprastą pavyzdį, kad suprastume, kaip java veikia viršesnis metodas.

klasė Tėvas {void view () {System.out.println ('tai yra tėvų klasės metodas)}} class Child pratęsia tėvą {void view () {System.out.println (' tai yra vaiko klasės metodas)}} public static void main (String args []) {Tėvų ob = naujas Tėvų () ob.view () Tėvų ob1 = naujas Vaikų () ob1.view ()
 Išvestis: tai yra vaikų klasės metodas

Metodo nepaisymo taisyklės

  • prieiga redaguoti gali leisti tik daugiau prieigos prie nepaisomo metodo.

  • Į galutinis metodas nepalaiko metodo nepaisymo.

  • Statinio metodo negalima nepaisyti.

  • Negalima nepaisyti privačių metodų.

  • Nepaisomo metodo grąžinimo tipas turi būti tas pats.

  • Mes galime vadinti tėvų klasės metodą svarbiausiu metodu, naudodami super raktinį žodį.

  • Į statybininkas negalima nepaisyti, nes vaikų klasė ir tėvų klasė negali turėti konstruktoriaus tuo pačiu pavadinimu.

Metodo svarbiausias pavyzdys

  • Programa rodyti svarbesnius, naudojant super raktinį žodį
klasė Tėvas {void show () {System.out.println ('tėvų klasės metodas')} klasė Vaikas pratęsia tėvą {void show () {super.show () System.out.println ('vaiko klasės metodas')} public static void main (String args []) {Parent ob = new Child () ob.show ()}}
 Išvestis: tėvų klasės metodas vaikų klasės metodas

Perkrovimas ir nepaisymas: metodo perkrovos ir metodo nepaisymo skirtumas

Toliau pateikiami pagrindiniai „Java“ metodo perkrovimo ir nepaisymo skirtumai.

Metodas Perkrovimas Metodas svarbesnis
  • Jis naudojamas programos skaitomumui didinti
  • Pateikia konkretų metodo įgyvendinimą jau tėvų klasėje
  • Jis atliekamas toje pačioje klasėje
  • Tai apima kelias klases
  • Perkrovos atveju parametrai turi būti skirtingi
  • Parametrai turi būti vienodi, jei nepaisoma
  • Yra kompiliavimo laiko polimorfizmo pavyzdys
  • Tai yra vykdymo laiko polimorfizmo pavyzdys
  • Grąžinimo tipas gali būti skirtingas, tačiau turite pakeisti ir parametrus.
  • Grąžinimo tipas turi būti toks pat, kaip ir svarbiausias
  • Statiniai metodai gali būti perkrauti
  • Nepaisymas nereikalauja statinių metodų.

Šiame tinklaraštyje išsamiai aptarėme metodo perkrovimą ir metodo nepaisymą. Įtraukiant klases, objektus ir sąvokas, tokias kaip paveldėjimas ir polimorfizmas, tampa gana svarbu aiškiai suprasti, ką reiškia perkrauti ar nepaisyti metodų java.

„Java“ programavimo kalba yra objektyvaus programavimo viršūnė ir apima daugybę programų. Atsižvelgdamas į paklausą ir populiarumą, siekiantis „Java“ kūrėjas turi išmanyti pagrindines programavimo kalbos sąvokas. Užsiregistruokite į „Edureka“ pradėti mokytis.

Turite mums klausimą? paminėkite tai šio straipsnio komentarų skyriuje „metodo perkrova ir metodas, viršijantis„ Java “, ir mes kuo greičiau susisieksime su jumis.