Luokka vs. esine

Olio-ohjelmoinnissa, a luokka on rakenne, joka määrittelee kokoelman ominaisuuksia ja menetelmiä. Voit ajatella sitä mallina. Esimerkiksi,

luokan esine public $ itemType; /* esim. tämä voi olla "Kirja" tai "CD" * / julkinen dollarihinta; julkinen toiminto printPrice () echo "Tämän $ this-> itemType hinta on $ this-> price dollaria.";  $ catch22 = uusi tuote (); $ catch22-> itemType = "Kirja"; $ saalis22-> hinta = 25; $ Catch22-> printPrice (); / * tulosteet Tämän kirjan hinta on 25 dollaria. * / $ americanPrayer = uusi tuote (); $ americanPrayer-> itemType = "CD"; $ americanPrayer-> hinta = 22; $ AmericanPrayer-> printPrice (); / * lähtö CD-levyn hinta on 22 dollaria * / 

Huomaa, että tässä esimerkissä $ catch22 ja $ americanPrayer ovat 2 objektia. Objektit ovat luokan esimerkkejä. Heillä on yhteinen rakenne, jonka luokka määrittelee. Tämä yleinen rakenne koostuu luokan ominaisuuksista ($ itemType ja $ hinta yllä olevassa esimerkissä) ja menetelmistä (toiminnot; printPrice () yllä olevassa esimerkissä). Eri esineiden ominaisuudet voivat kuitenkin olla erilaisia.

Yllä olevassa esimerkissä hinta ja tuotetyyppi ovat erilaisia ​​saman luokan kahdelle objektille. Mutta molemmilla kohteilla on printPrice () -menetelmä, a hinta omaisuus ja itemtype omaisuus, jota voidaan käyttää.

luokkaEsineMääritelmä Luokka on mekanismi, jolla sidotaan datajäsenet ja niihin liittyvät menetelmät yhdessä yksikössä. Luokan esiintymä tai luokan muuttuja. Olemassaolo Se on loogista olemassaoloa Se on fyysistä olemassaoloa Muistin allokointi Muistitilaa ei ole varattu, kun se luodaan. Muistitila on varattu, kun se luodaan. Julistus / määritelmä Määritelmä luodaan kerran. se luodaan monta kertaa kuin tarvitset.

Erikoistapaukset

Joillakin ohjelmointikielillä, esim. Python, kaikki on esine. Tämä tarkoittaa, että toiminnot, muuttujat, luokan esiintymät ja jopa todelliset luokat käsitellään objekteina ohjelmointikielen avulla.