Junior
Hansı funksiyalardan sonra nöqtə qoymaq və növbəti metodu çağırmağa davam etmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Eyni sinifin və ya oxşar interfeysə malik başqa bir sinifin obyektini qaytaran funksiyaların ardınca, çağrı zəncirini davam etdirməyə imkan verən funksiyalar. Bu, Method Chaining dizayn nümunəsi sayəsində mümkündür.
Belə hallara nümunələr:
- Obyekt qaytaran getterlər:
obyekt.getProperty().anotherMethod() this-i qaytaran setterlər:obyekt.setProperty(dəyər).anotherProperty(dəyər2)- Eyni növ yeni obyekt qaytaran metodlar:
obyekt.filter(...).sort(...) - Obyektlərin yaradılması və konfiqurasiyası:
new Builder().step1().step2().build()
# Python-da Method Chaining nümunəsi
class Car:
def __init__(self):
self.color = None
self.engine = None
def set_color(self, color):
self.color = color
return self # Zənciri davam etdirmək üçün özünü qaytarır
def set_engine(self, engine):
self.engine = engine
return self
def drive(self):
print(f"{self.color} maşını sürür, mühərriki {self.engine}.")
# Method Chaining istifadəsi
my_car = Car().set_color("qırmızı").set_engine("V8")
my_car.drive()