1 / 7

Muutamia käsitteitä

Muutamia käsitteitä. Perintä (inheritance) on luokkien välinen suhde, jossa johdettu luokka (subclass, derived class) perii kantaluokan, perusluokan (superclass, base class) rakenteen ja käyttäytymisen.

odin
Télécharger la présentation

Muutamia käsitteitä

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Muutamia käsitteitä • Perintä (inheritance) on luokkien välinen suhde, jossa johdettu luokka (subclass, derived class) perii kantaluokan, perusluokan (superclass, base class) rakenteen ja käyttäytymisen. • Sitä nimitetään myös yleistys-/erikoistussuhteeksi (generalization/specialization relationship), sillä kantaluokka on johdetun luokan yleistys, ja toisinpäin, johdettu luokka erikoistaa kantaluokkaa. • Johdettu luokka perii kantaluokan kaikki tietojäsenet ja jäsenfunktiot. tMyn

  2. Johdettu luokka voi erikoistua lisäämällä uusia tietojäseniä tai jäsenfunktioita ja/tai korvaamalla (redefined functions) kantaluokan jäsenfunktioiden toteutuksia. • Termi redefinition, korvaaminen liittyy nimenomaan perintään. • Perintä on yksiperintää (single inheritance) tai moniperintää (multiple inheritance) sen mukaan periikö johdettu luokka yhdestä vai useammasta kantaluokasta, kuva 1. • Tätä kirjoitellessa PHP ei tue moniperintää – tämä ei taida monenkaan vauhtia hidastaa! tMyn

  3. Vene Auto Hevosajoneuvo Amfibi Vankkurit Kiesit Kuva 1. Yksiperintä ja moniperintä. tMyn

  4. Redefining an Inherited Function: A derived class inherits all the member functions (and member variables as well) that belong to the base class. However, if a derived class requires a different implementation for an inherited member function, the function may be redifened in the derived class. tMyn

  5. Redefining an Inherited Function: When a member function is redefined, you must list its declaration and definition in the definition of the derived class even though the declaration is the same as in the base class. If you do not wish to redefine a member function that is inherited from the base class, then it is not listed in the definition of the derived class. tMyn

  6. Johdettu luokka on kantaluokasta johdettu uusi luokka. • Perintä mahdollistaa siis luokkien välisen periytymisen. • Oliot eivät voi periä toisiaan. • Kantaluokka sisältää ne tietojäsenet ja jäsenfunktiot, jotka ovat samoja kaikille luokkahierarkian olioille. tMyn

  7. Johdettu luokka sisältää vain ne tietojäsenet ja jäsenfunktiot, jotka ovat lisäksi tarpeellisia vain johdetun luokan olioille. • Johdettuun luokkaan ei siis esitellä uudelleen kantaluokassa jo esiteltyjä tietojäseniä tai jäsenfunktioita, vaan tarkoituksena on käyttää hyödyksi kantaluokan jäseniä sellaisenaan. tMyn

More Related