Junior
Milyen funkciók után lehet pontot tenni és folytatni a következő metódus hívását?
sobes.tech MI
Válasz az MI-től
Ugyanazon osztály vagy hasonló interfésszel rendelkező osztály objektumát visszaadó függvények után, amelyek lehetővé teszik a hívási lánc folytatását. Ez a Method Chaining tervezési minta révén lehetséges.
Ilyen esetek példái:
- Objektumot visszaadó getterek:
objektum.getProperty().anotherMethod() this-et visszaadó setterek:objektum.setProperty(érték).anotherProperty(érték2)- Ugyanazon típusú új objektumot visszaadó metódusok:
objektum.filter(...).sort(...) - Objektumok létrehozása és konfigurálása:
new Builder().step1().step2().build()
# Pythonban például Method Chaining
class Car:
def __init__(self):
self.color = None
self.engine = None
def set_color(self, color):
self.color = color
return self # Visszaadja önmagát a lánc folytatásához
def set_engine(self, engine):
self.engine = engine
return self
def drive(self):
print(f"Vezetve egy {self.color} autó, motorja {self.engine}.")
# Method Chaining használata
my_car = Car().set_color("piros").set_engine("V8")
my_car.drive()