1 / 16

Luokan määrittely class-määreellä

Luokan määrittely class-määreellä. Luokan määrittely tarkoittaa luokan tietojäsenten esittelyä ja jäsenfunktioiden määrittelyä. Luokan määrittely kertoo, mitä tietoja sen luokan olioilla on ja mitä palveluja luokan oliot asiakasolioilleen tarjoavat.

randi
Download Presentation

Luokan määrittely class-määreellä

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. Luokan määrittely class-määreellä • Luokan määrittely tarkoittaa luokan tietojäsenten esittelyä ja jäsenfunktioiden määrittelyä. • Luokan määrittely kertoo, mitä tietoja sen luokan olioilla on ja mitä palveluja luokan oliot asiakasolioilleen tarjoavat. • Luokan määrittely on itse asiassa tyyppimäärittely, jota tarvitaan myöhemmin olioita luotaessa ja olioille viestiä lähetettäessä. • Luokkatyypin määrittely ei varaa muistia olion talletusta varten. tMyn

  2. PHP:ssä tietojäseniä (jäsenmuuttujia) kutsutaan myös ominaisuuksiksi (attribute) ja jäsenfunktioita kutsutaan metodeiksi (method). • Huom! Luokan määrittely ei lopu puolipisteeseen: tMyn

  3. Luokkatyypin eli luokan määrittely: class luokanNimi { tietojäsenten esittely; jäsenfunktioiden määrittely; } • Luokan jäsenten näkyvyyteen voidaan vaikuttaa varatuilla sanoilla private, protected ja public. • Nämä varatut sanat ovat saantimääreitä (access specifier, access modifiers). tMyn

  4. private-määreen jäljessä esitellyt luokan jäsenet ovat yksityisiä eli ne ovat käytettävissä ainoastaan luokan sisällä. • public-määreen jäljessä esitellyt luokan jäsenet ovat julkisia ja ne ovat käytettävissä missä kohtaa lähdekoodia tahansa, jossa luokkatyypin mukainen olio on viittausalueella. • protected-määre määrittelee tiedot suojatuiksi, määre liittyy periytymiseen. • Yleensä luokan tietojäsenet esitellään private-määreen jäljessä ja jäsenfunktiot public-määreen jäljessä. tMyn

  5. Otetaan saantimääreet mukaan luokan määrittelyyn: class luokanNimi { public jäsenfunktioiden määrittely; private tietojäsenten esittely; } • Saantimääreet voi periaatteessa asetella mieleisekseen, mutta tietojäseniä ei silti ole syytä määritellä julkisiksi oikeastaan koskaan. tMyn

  6. tMyn

  7. tMyn

  8. tMyn

  9. $this-muuttuja viittaa luokan nykyiseen olioon. Sen avulla voidaan viitata käsillä olevan luokan metodiin tai ominaisuuteen. Huomaa syntaksi! tMyn

  10. Koska vaikkapa tietojäsen $m_etunimi on private-tyyppinen, sitä voi käyttää vain saman luokan jäsenfunktioiden kautta. • Sitä ei voi kutsua luokan ulkopuolelta: tMyn

  11. tMyn

  12. tMyn

  13. Jos haluttaisiin kutsua luokan tietojäseniä luokan ulkopuolelta, niin silloin tulisi asettaa tietojäsen public-tyyppisiksi. • Nyt siis ohjelma toimii, vaikka tietojäsenten asettaminen public-tyyppiseksi on vastoin olio-ohjelmoinnin periaatteita (data hiding): tMyn

  14. tMyn

  15. tMyn

  16. tMyn

More Related