Skirtumas tarp C # viršijimo ir perkrovimo

Pagrindinis skirtumas - viršesnis nei Perkrovos C #
 

pagrindinis skirtumas tarp viršijimo ir perkrovos C # yra tai viršesnio metodo skambučio susiejimas su jo apibrėžimu įvyksta vykdant laiką, o perkrauto metodo skambučio susiejimas su jo apibrėžimu įvyksta kompiliavimo metu.

C # yra bendrosios paskirties programavimo kalba, kurią sukūrė „Microsoft“. Pagrindinis C # pranašumas yra tas, kad jis palaiko objektyvų programavimą (OOP). Vienas OOP ramstis yra polimorfizmas. Tai suteikia objektui galimybę elgtis įvairiai. Yra du polimorfizmo tipai, žinomi kaip viršesnis ir perkraunamas. Šiame straipsnyje aptariamas skirtumas tarp metodo nepaisymo ir perkrovimo C #.

TURINYS

1. Apžvalga ir svarbiausias skirtumas
2. Kas svarbesnė C #
3. Kas yra perkrova C #
4. „C“ viršijimo ir perkrovimo panašumai.
5. Šalutinis palyginimas - nepaisymas ir perkrovimas C # lentelės forma
6. Santrauka

Kas yra svarbesnė C #?

Yra ir dar viena svarbi OOP sąvoka - paveldimumas. Tai yra naudoti jau egzistuojančios klasės atributus ir metodus. Tai pagerina kodo pakartotinį naudojimą. Jau esanti klasė yra pagrindinė klasė, o naujoji klasė vadinama išvestine klase. Nepaisant polimorfizmo, turėtų būti pagrindinė klasė ir išvestinė klasė. Nepaisomas metodo skambučio susiejimas su apibrėžimu įvyksta vykdant laiką. Pavyzdys yra toks.

01 paveikslas: C # programa su nepaisymu

Pagal aukščiau pateiktą programą, klasė „Shape“ yra pagrindinė klasė, joje yra pateikimo metodas. Klasės stačiakampis ir trikampis yra išvestinės klasės. Šios išvestinės klasės taip pat turi tą patį metodo ekraną su savo įgyvendinimais.

Pirmiausia sukuriamas pamatinis kintamasis obj. Tai nurodo „Shape“ objektą. Taigi, bus vykdomas „Shape“ klasės rodymo metodas. Tada atskaitos kintamasis nurodo objektą Stačiakampis. Taigi, bus naudojamas stačiakampio klasės rodymo metodas. Galiausiai atskaitos kintamasis nurodo objektą Trikampis. Taigi, trikampio klasės rodymo metodas bus vykdomas. Pagrindinės klasės rodymo metodas yra svarbesnis išvestinių klasių rodymo metodais.

Bėgimo būdas nustatomas vykdymo metu. „Shape“ klasė rašoma naudojant „virtualų“ raktinį žodį. Stačiakampio ir trikampio klasės rašomos raktiniu žodžiu „nepaisyti“. Jei šie raktiniai žodžiai nenaudojami, išvestis visiems atspausdins „Shape“ klasės rodymo metodo turinį.

Kas yra perkrova C #?

Perkrovos metu keli metodai turi tą patį pavadinimą, tačiau su skirtingais parametrais. Parametrai gali būti įvairių tipų. Metodai taip pat gali turėti skirtingą parametrų skaičių. Metodo perkrova vyksta toje pačioje klasėje. Perkrautų metodų susiejimas su apibrėžimu įvyksta kompiliavimo metu. Žiūrėkite žemiau pateiktą C # programą.

02 pav.: C # Perkrovos programa

Pagal aukščiau pateiktą programą, A klasė turi du metodus tuo pačiu pavadinimu, vadinamą suma. Jie turi įvairių tipų parametrus. Pagrindinėje programoje sukuriamas objektas A. Suma (2,3) pasirenka sumos metodą sveikaisiais skaičiais. Suma (5.1, 7.94) pasirenka sumos metodą su dvigubomis vertėmis. Abu metodai turi tą patį pavadinimą ir tą patį parametrų skaičių. Tačiau parametrų tipai skiriasi. Atitinkamai vadinamas reikiamas metodas. Perkrovos taip pat gali atsirasti, jei metodo pavadinimai ir parametrų tipai yra vienodi, tačiau parametrų skaičius skiriasi.

Koks yra viršijimas ir perkrovimas C # panašumas?

  • Tiek viršijimas, tiek perkrova C # yra polimorfizmo tipai.

Kuo skiriasi C # viršijimas ir perkrovimas??

Nepaisymas ir perkrovimas C #

Svarbiausia C # yra pateikti specifinę išvestinės klasės metodo metodą, taikomą jau bazinėje klasėje. Perkrovimas C # yra sukurti kelis metodus tuo pačiu pavadinimu su skirtingais įgyvendinimais.
 Parametrai
C # svarbesniame būde metodai turi tą patį pavadinimą, tuos pačius parametrų tipus ir tą patį parametrų skaičių. C # perkrovos atveju metodai turi tą patį pavadinimą, bet skirtingą parametrų skaičių arba skirtingą parametrų tipą.
Atsiradimas
C # kategorijoje svarbesnis įvyksta pagrindinėje klasėje ir išvestinėje klasėje. C # atveju perkrovos vyksta toje pačioje klasėje.
 Įrišimo laikas
Nepaisomo metodo reikalavimas susieti jį su apibrėžimu įvyksta vykdymo metu. Perkrauto metodo skambučio susiejimas su jo apibrėžimu įvyksta kompiliavimo metu.
Sinonimai
Nepaisymas vadinamas runtime polimorfizmas, dinaminis polimorfizmas arba vėlyvas įrišimas. Perkrovos vadinamos kaip sudaryti laiko polimorfizmą, statinis polimorfizmas arba ankstyvas įrišimas.

Santrauka - Viršesnis vs Perkrovos C #

Viršijimas ir perkrovimas yra dvi polimorfizmo rūšys. Skirtumas tarp C # perrašymo ir perkrovimo yra tas, kad nepaisomo metodo skambučio susiejimas su jo apibrėžimu įvyksta vykdymo metu, o perkrauto metodo skambučio susiejimas su jo apibrėžimu įvyksta kompiliavimo metu..

Nuoroda:

1.Kumaras, Mukeshas. C # kampas. Galima rasti čia
2.tutorialspoint.com. „C # polimorfizmas“. TutorialsPointGalima rasti čia
3.tutorialspoint.com. „C # duomenų tipai“. TutorialsPoint, galite rasti čia