Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake
Polymorphism ni mojawapo ya nguzo kuu za Object-Oriented Programming (OOP). Neno hili linatoka katika maneno ya Kigiriki "poly" (nyingi) na "morph" (umbo), likimaanisha kuwa kitu kimoja kinaweza kuwa na maumbo mengi. Katika Python, polymorphism inaruhusu methods, functions, au operators kufanya kazi tofauti kulingana na muktadha.
Method Polymorphism:
Hii inaruhusu methods zenye jina moja kutenda kazi tofauti kwenye class mbalimbali.
Operator Polymorphism:
Hii inaruhusu operator moja kama + kufanya kazi tofauti kulingana na aina za data.
Katika Python, class tofauti zinaweza kuwa na methods zenye jina moja lakini tabia tofauti.
class Bird:
def intro(self):
print("There are many types of birds.")
def flight(self):
print("Most birds can fly.")
class Sparrow(Bird):
def flight(self):
print("Sparrows can fly.")
class Ostrich(Bird):
def flight(self):
print("Ostriches cannot fly.")
# Objects
obj_bird = Bird()
obj_sparrow = Sparrow()
obj_ostrich = Ostrich()
obj_bird.intro()
obj_bird.flight()
obj_sparrow.intro()
obj_sparrow.flight()
obj_ostrich.intro()
obj_ostrich.flight()
Hapa, method flight() imebadilika kulingana na object inayoitwa, ingawa jina lake limebaki lilelile.
Operator moja kama + inaweza kutenda kazi tofauti kulingana na data inayoshughulikiwa.
# Integer addition
print(10 + 20) # Output: 30
# String concatenation
print("Hello" + " World") # Output: Hello World
Hii inaonyesha jinsi operator moja inaweza kubadilika kulingana na aina za data.
Unaweza kuwa na function moja inayofanya kazi kwa objects za class tofauti.
def make_sound(animal):
animal.sound()
class Dog:
def sound(self):
print("Woof! Woof!")
class Cat:
def sound(self):
print("Meow!")
# Objects
dog = Dog()
cat = Cat()
make_sound(dog)
make_sound(cat)
Hii inaonyesha jinsi function make_sound() inavyoweza kufanya kazi na objects tofauti (dog na cat) zinazoshiriki method ya jina moja sound().
Kubadilika: Inaruhusu code kuwa rahisi kubadilishwa na kutumiwa tena.
Urahisi: Inapunguza ugumu wa code kwa kuruhusu matumizi ya interface moja kwa objects tofauti.
Mwisho:
Katika somo linalofuata tutakwend akujifunz akuhusu inheritance
Jiunge nasi WhatsApp kupata update zetu
Umeionaje Makala hii.. ?
Katika somo hili utakwend akujifunza ktengeneza model kwa ajili ya database table ya menu yetu.
Soma Zaidi...Katika somo hili utajifunza maana ya class, sheria za uandishi wake na mifano halisi
Soma Zaidi...Katika somo hili utakwenda kujifunz ajinsi ya kusoma mafaili na mitindo mbalimbali ya kusoma data
Soma Zaidi...Katika somo hili utajifunza maana ya encapsulation na sheria za uandishi wake
Soma Zaidi...Katika somo hili tutakwenda kujifunza kuhusu string indexing. Kama tulivyojifunza kuhusu namba katika somo lililopita, basi hapa tutakwenda kucheza na string.
Soma Zaidi...Katika somo hili utajifunza Jinsi ya Kuunda Simple Navigation Menu Katika Django kwa kutumia template
Soma Zaidi...Katika somo hili utakwenda kujfunza operator nyingine kama assignment operator logical, identity operator na membership operator.
Soma Zaidi...Katika somo hili utakwend akujifunz anamna ya kuwez akupata taarifa zinazohusu faili
Soma Zaidi...Katika somo hili utakwenda kujifunza vipi django inaweza kuwasiliana na database, utajifunza kuusu orm na model
Soma Zaidi...Katika somo hili utakwend akujifunza jinsi ya kuandika function, kuweka parameter na kuitumia function
Soma Zaidi...