Proqramlaşdırmada çox formallıq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Polimorfizm, müxtəlif siniflərdən olan obyektlərin eyni metod çağırışına müxtəlif şəkildə cavab vermək qabiliyyətidir. Bu, irsiyyət, abstrakt siniflər və interfeyslər vasitəsilə əldə edilir. C#-da polimorfizm, əsas sinfin metodlarının törəmə sinflərdə yenidən yazılması (overriding) və metodların yüklənməsi (overloading) vasitəsilə nümayiş etdirilir.
Polimorfizm nümunələri:
-
Metodların yenidən yazılması (İcra vaxtı Polimorfizm): Törəmə sinif, əsas sinifdə elan olunmuş metodun öz tətbiqini təmin edir. Bunun üçün əsas sinifdə
virtualaçar sözü istifadə olunur, törəmə sinifdə isəoverride.// Əsas sinif class Shape { // Yenidən yazıla bilən virtual metod public virtual void Draw() { // Standart tətbiq } } // Törəmə sinif 1 class Circle : Shape { // Draw metodunun yenidən yazılması public override void Draw() { // Dairə üçün tətbiq } } // Törəmə sinif 2 class Square : Shape { // Draw metodunun yenidən yazılması public override void Draw() { // Kvadrat üçün tətbiq } }Bu halda,
Shapeobyektlərinin siyahısı yaradılır və hər biri üçünDrawmetodu çağırılır, və hər bir fiqur növü üçün xüsusi tətbiq çağırılır. -
Metodların yüklənməsi (Compile-time Polimorfizm): Eyni adlı, lakin fərqli imzaya (parametrlərin sayı və ya tiplərinə görə) malik bir neçə metod.
class Calculator { // Yüklənmiş Add metodu (int üçün) public int Add(int x, int y) { return x + y; } // Yüklənmiş Add metodu (double üçün) public double Add(double x, double y) { return x + y; } }
Polimorfizm, daha çevik, genişlənə bilən və asan saxlanılan kod yaratmağa kömək edir. Bu, müxtəlif tiplərdə obyektlərlə işləyə bilən ümumi kod yazmağa imkan verir.