Luokat ja esineet

Luokat ja esineet

> LeekScript-opetusohjelma

Tervetuloa olio-ohjelmoinnin (OOP) dokumentaatioon, joka koostuu luokkien ja objektien luomisesta koodin järjestämiseksi. Tämä ominaisuus lisättiin LeekScript 2:sta.

Objektit

Objektit ovat arvoja, jotka ryhmittelevät useita arvoja, joista kukin liittyy nimeen. Näitä arvoja kutsutaan ominaisuuksiksi tai kentiksi.

Objektin luominen

Objektin luomiseen käytämme seuraavaa syntaksia:

Tässä esimerkissä objektilla "object" on kaksi ominaisuutta, "nimi" ja "ikä".

Tyhjän objektin luominen:

Pääsy kiinteistöön

Piste . sallii pääsyn kohteen ominaisuuteen:

Vaihtoehtoinen syntaksi on olemassa: object["prop"], joka sallii merkkijonoarvon käytön ominaisuuden käyttämiseen:

Omaisuuden muokkaaminen

Kun omaisuutta on käytetty, sitä voidaan muokata normaalin muuttujan tapaan:

Objektien vertailu

Operaattorit == ja === vertaavat keskenään vain, jos objekti on sama. Ne palauttavat arvon "false", vaikka kahdella objektilla olisi samat ominaisuudet:

HUOM: === on vanhentunut alkaen LeekScript 4.

Luettelo ominaisuuksista

Luokat

Luokka on malli objektien luomiseen.

Luokan määrittäminen

Määrittelemme "ase"-luokan, jossa on 4 kenttää, jotka on nimetty seuraavasti:

Objektin luominen luokan kanssa

"Uusi" on itse asiassa valinnainen, luokka on samanlainen kuin funktio ja sitä voidaan kutsua suoraan objektin luomiseksi:

Voit hakea objektin luokan käyttämällä .class-komentoa:

esiintymä

Avainsanaa "instanceof" käytetään tarkistamaan, onko objekti luokan esiintymä:

Rakentajat

Konstruktori on luokassa määritetty funktio, joka mahdollistaa objektin luomisen parametriluettelosta. Määrittelemme rakentajan seuraavasti:

Konstruktoria käyttämällä:

Menetelmät

Metodi on luokassa määritelty funktio, jota voidaan käyttää tämän luokan objektissa. Määrittelemme menetelmän seuraavasti:

Käytämme menetelmää syntaksin kanssa:

Object["member"] syntaksi toimii myös:

Ei ole suositeltavaa käyttää sitä, virheen tekemisen riski on melko suuri.

Ylikuormitus

Menetelmiä on mahdollista ylikuormittaa yksinkertaisesti muuttamalla parametrien määrää

Voit sitten käyttää menetelmää yhdellä tai kahdella valitsemallasi parametrilla:

Legacy

Perinnön käsite mahdollistaa luokkien hierarkian luomisen. Käytämme tätä syntaksia "extends"-avainsanan kanssa. Yritämme julistaa "perusluokan", josta voidaan rakentaa muita luokkia. Luokat, jotka perivät, saavat kaikki perusluokan jäsenet (muuttujat) ja menetelmät (funktiot) ja voivat määritellä ne uudelleen tai lisätä uusia