Ano ang pagkakaiba sa pagitan ng Paraan Overloading At Overriding?



Saklaw ng artikulong ito ang mga pangunahing pagkakaiba sa pagitan ng pag-overload ng pamamaraan at pag-override sa java na may iba't ibang mga halimbawa kabilang ang sobrang keyword at iba't ibang mga patakaran.

Ang wika ng Java programming ay ang pinakamahusay na pagpipilian pagdating sa . Na may mga konsepto tulad mga klase , , , atbp, nagiging madali itong magtrabaho . Ang kadalian ng pag-access at madaling pag-syntax ay gumagawa ng mahusay na code at hindi gaanong kumplikado. Sa artikulong ito, malalaman natin ang tungkol sa pag-overload ng paraan at pag-override sa Java. Ang sumusunod ay mga paksang tinalakay sa blog na ito:

Ano ang Pag-o-overload ng Paraan sa Java?

Pinapayagan ng paraan ng overloading ang pamamaraan na magkaroon ng parehong pangalan na naiiba sa batayan ng mga argumento o mga uri ng pagtatalo. Maaari itong maiugnay sa polymorphism ng compile-time. Ang mga sumusunod ay ilang mga payo na dapat nating tandaan habang nag-o-overload ng mga pamamaraan sa Java.





  • Hindi namin maaaring mag-overload ang isang uri ng pagbabalik.

  • Kahit na maaari kaming mag-overload , ang mga argumento o input parameter ay dapat na magkakaiba.



  • Hindi kami maaaring mag-overload ng dalawang pamamaraan kung magkakaiba lamang ang mga ito sa pamamagitan ng isang static na keyword.

  • Tulad ng ibang mga static na pamamaraan, ang pangunahing () pamamaraan ay maaari ding mag-overload.

    namespace sa c ++

overloading ng pamamaraan - pamamaraang overloading at overriding sa java- edureka



Tingnan natin ang isang simpleng programa upang maunawaan kung paano gumagana ang overloading ng pamamaraan sa sawa.

pampublikong klase 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 pangunahing (String args []) {Div ob = new Div () ob.div (10, 2) ob.div (10, 2, 3)}}
 Output: 5 4

Sa program sa itaas, mayroon kaming dalawang pamamaraan na may parehong pangalan ngunit magkakaibang mga parameter. Ito ay kung paano gumagana ang pamamaraang overloading .

Bakit Paraan ng Sobrang Pag-load?

Ang pangunahing bentahe ng paggamit ng pamamaraang labis na karga sa Java ay binibigyan tayo nito ng kalayaan upang hindi matukoy muli ang isang pagpapaandar para sa paggawa ng parehong bagay. Sa halimbawa sa ibaba, ang dalawang pamamaraan ay karaniwang gumaganap ng paghahati, sa gayon maaari kaming magkaroon ng iba't ibang mga pamamaraan na may parehong pangalan ngunit may iba't ibang mga parameter. Nakakatulong din ito sa compile-time polymorphism.

Overloading ang pangunahing () pamamaraan:

Ang sumusunod ay isang halimbawa upang mag-overload ang pangunahing () paraan sa java.

pampublikong klase 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)}}
 Output: hello welcome edurekan hello, welcome sa edureka

Mga Halimbawa ng Pag-overload ng Paraan

  • Programa upang mag-overload ng mga static na pamamaraan sa java.
pampublikong klase Pagsubok {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))}}
 Output: 100 edureka
  • Programa upang mag-overload ng tatlong mga pamamaraan na may parehong pangalan.
pampublikong klase Magdagdag ng {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 (doble a, dobleng 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)}}
 Output: 40 75 34

Ano ang Overriding ng Paraan sa Java?

Ang mana sa java ay nagsasangkot ng isang ugnayan sa pagitan ng mga klase ng magulang at anak. Tuwing kapwa ang mga klase ay naglalaman ng mga pamamaraan na may parehong pangalan at mga argumento o parameter tiyak na ang isa sa mga pamamaraan ay mag-o-override sa iba pang pamamaraan sa panahon ng pagpapatupad. Ang pamamaraan na naisakatuparan ay nakasalalay sa object.

Kung tinawag ng object ng klase ng bata ang pamamaraan, ang pamamaraan ng klase ng bata ay mag-o-override sa pamamaraan ng magulang na klase. Kung hindi man, kung tatawag ang pamamaraan ng magulang na klase ng pamamaraan, ang pamamaraan ng magulang na klase ay papatayin.

Ang pamamaraang overriding ay tumutulong din sa pagpapatupad ng runtime polymorphism sa java. Kumuha tayo ng isang simpleng halimbawa upang maunawaan kung paano gumagana ang overriding ng pamamaraan sa java.

klase ng Magulang {void view () {System.out.println ('ito ay isang paraan ng klase ng magulang)}} Pinapahaba ng klase ng Anak ang Magulang {void view () {System.out.println (' ito ay isang pamamaraan ng klase ng bata)}} public static void main (String args []) {Magulang ob = bagong Magulang () ob.view () Magulang ob1 = bagong Anak () ob1.view ()
 Output: ito ay isang pamamaraan ng klase ng bata

Mga Panuntunan Para sa Pag-override ng Paraan

  • Ang i-access ang pag-edit maaari lamang payagan ang higit na pag-access para sa overridden na pamamaraan.

  • SA panghuli Hindi sinusuportahan ng pamamaraan ang pag-override ng pamamaraan.

    gawing array php ang bagay
  • Ang isang static na pamamaraan ay hindi maaaring ma-override.

  • Ang mga pribadong pamamaraan ay hindi maaaring mapalampas.

  • Ang uri ng pagbabalik ng overriding na pamamaraan ay dapat na pareho.

  • Maaari naming tawagan ang pamamaraan ng magulang na klase sa overriding na paraan gamit ang sobrang keyword.

  • SA tagabuo hindi ma-override dahil ang isang klase ng bata at isang magulang na klase ay hindi maaaring magkaroon ng tagapagbuo na may parehong pangalan.

Pamamaraan Overriding Halimbawa

  • Programa upang ipakita ang pag-override gamit ang sobrang keyword
klase ng Magulang {void show () {System.out.println ('paraan ng magulang na klase')} pinalawak ng klase ng Anak ang Magulang {void show () {super.show () System.out.println ('paraan ng klase ng bata')} publiko static void main (String args []) {Parent ob = bagong Bata () ob.show ()}}
 Output: magulang klase pamamaraan pamamaraan ng klase ng bata

Overloading vs Overriding: Pagkakaiba sa pagitan ng Overloading ng Paraan at Overriding ng Paraan

Ang mga sumusunod ay ang mga pangunahing pagkakaiba sa pagitan ng pamamaraang overloading at pag-override sa Java.

Pamamaraan ng Overloading Pamamaraan ng Pag-override
  • Ginagamit ito upang madagdagan ang kakayahang mabasa ng programa
  • Nagbibigay ng isang tiyak na pagpapatupad ng pamamaraan na nasa magulang na klase
  • Ginaganap ito sa loob ng parehong klase
  • Nagsasangkot ito ng maraming klase
  • Ang mga parameter ay dapat na magkakaiba kung sakaling mag-overload
  • Ang mga parameter ay dapat na pareho sa kaso ng pag-override
  • Ay isang halimbawa ng polymorphism ng compile-time
  • Ito ay isang halimbawa ng runtime polymorphism
  • Ang uri ng pagbabalik ay maaaring magkakaiba ngunit dapat mo ring baguhin ang mga parameter.
  • Ang uri ng pagbabalik ay dapat na pareho sa pag-override
  • Ang mga static na pamamaraan ay maaaring mag-overload
  • Ang pag-override ay hindi nagsasangkot ng mga static na pamamaraan.

Sa blog na ito, tinalakay namin ang paraan ng labis na pag-load at ang pag-override ng paraan nang detalyado. Sa paglahok ng mga klase, bagay, at konsepto tulad ng pamana at polymorphism nagiging mahalaga ito upang makakuha ng isang malinaw na ideya ng kung ano ang ibig sabihin ng labis na karga o pag-override na mga pamamaraan sa java.

Ang wika sa pagprograma ng Java ay isang rurok sa programa na nakatuon sa object at isinasama ang maraming mga application. Sa kahilingan at katanyagan, ang isang naghahangad na developer ng java ay dapat na may kakayahan sa pangunahing mga konsepto ng wika ng programa. Mag-enrol sa Edureka upang simulan ang iyong pag-aaral.

May tanong ba sa amin? mangyaring banggitin ito sa seksyon ng mga komento ng artikulong ito sa 'pamamaraang overloading kumpara sa pamamaraang pag-override sa java' at babalikan ka namin sa lalong madaling panahon.

paano maging ai engineer