Kompyuter ilmlari va dasturlash texnologiyalari



Yüklə 90,48 Kb.
səhifə2/6
tarix25.12.2023
ölçüsü90,48 Kb.
#161466
1   2   3   4   5   6
Ahmad phyton 2 MI (1)

Vorislik va polimorfizm.
Vorislik (inheritance) va polimorfizm, ob'ektga yo'naltirilgan dasturlash (OOP) prinsiplaridan ikkisi hisoblanadi.
Vorislik (Inheritance):
Vorislik, bir sinfning boshqa sinfdan xususiyatlarini va metodlarini olish imkoniyatini beradi. Bu, kodni qayta ishlashni engelleadi va kengaytirishga imkon beradi. Misol uchun, quyidagi kodda "Fruit" (meva) sinfi yaratilgan va "Apple" (olma) sinfi "Fruit" sinfiga vorislik qiladi:
# Vorislik misoli
class Fruit:
def __init__(self, rang, turi):
self.rang = rang
self.turi = turi

def chiqar(self):
print(f"{self.rang} rangli {self.turi}")

class Apple(Fruit):
def __init__(self, rang, turi, narh):
# Bazoviy sinfning __init__ metodini chaqirish
super().__init__(rang, turi)
self.narh = narh

def chiqar(self):
# Bazoviy sinfning chiqar metodini o'zgartirish
print(f"{self.rang} rangli {self.turi}, narhi: {self.narh} so'm")

# Ob'ekt yaratish
olma = Apple("yashil", "olma", 5000)

# Metodni chaqirish
olma.chiqar()
Bu misolda, "Fruit" sinfi boshqa sinflarga vorislik qiladi. "Apple" sinfi esa "Fruit" sinfiga voris bo'lishi sababli "Fruit" sinfiga tegishli barcha xususiyatlarini olib boradi. "Apple" sinfi esa "Fruit" sinfining chiqar metodini o'zgartirib yozadi.
Polimorfizm:
Polimorfizm, bir xil funksiyani bir nechta turli ob'ektlar yaratib, ularni shakllantirib, qo'llash imkoniyatini anglatadi. Misol uchun:
# Polimorfizm misoli
def chiqar_ma'lumot(ob):
ob.chiqar()

# Ob'ekt yaratish
meva = Fruit("sariq", "banan")
olma = Apple("yashil", "olma", 5000)

# Polimorfizmni amalga oshirish
chiqar_ma'lumot(meva)
chiqar_ma'lumot(olma)
Bu misolda, chiqar_ma'lumot funksiyasi qabul qilgan ob'ektning chiqar metodini chaqiradi. Bu funksiya orqali "Fruit" va "Apple" ob'ektlarini uzatish orqali, ularga xos chiqarishni ko'rsatamiz.
Vorislik va polimorfizm bilan ishlash, kodni modulyar va tuzilma bo'lishga yordam beradi, shuningdek birinchi sinflarni qayta ishlash va tuzilmani o'zgartirishni osonlashtiradi.



Yüklə 90,48 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə