Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Introduction to Composition | Koostaminen
Olio-ohjelmointi Pythonissa

bookIntroduction to Composition

Pyyhkäise näyttääksesi valikon

Kokoonpano (composition) edustaa has-a-suhdetta, jossa luokka sisältää toisen luokan olion sen sijaan, että perisi siitä. Esimerkiksi Autolla on moottori. Tämä eroaa periytymisestä, joka mallintaa on-a-suhdetta, kuten Kuorma-auto on ajoneuvo.

1234567891011121314151617
class Engine: def start(self): return "Engine started" class Car: def __init__(self, brand, engine): self.brand = brand self.engine = engine # Car HAS an Engine def drive(self): return f"{self.brand}: {self.engine.start()}" engine = Engine() car = Car("Toyota", engine) print(car.drive())
copy

Car ei peri Engine-luokasta. Sen sijaan se sisältää Engine-olion ja käyttää sitä toiminnassaan. Tämä osoittaa has-a-suhteen, ei on-a-suhdetta, mikä tekee suunnittelusta joustavamman ja helpommin muokattavan myöhemmin.

Note
Huomio

Käytä koostamista, kun tarvitset joustavia osia, selkeitä rajoja ja käytöksen vaihtamista ajonaikaisesti. Suosi perintää, kun todellinen on-osa -hierarkia on ilmeinen ja vakaa.

question mark

Mikä on koostamisen tärkein hyöty?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 1

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 3. Luku 1
some-alt