Klasse vs Objekt

I objektorientert programmering, a klasse er en konstruksjon som definerer en samling av egenskaper og metoder. Du kan tenke på det som en mal. For eksempel,

 Klassepost public $ itemType; / * f.eks. dette kan være "bok" eller "cd" * / offentlig $ pris; offentlig funksjon printPrice () echo "Prisen på denne $ this-> itemType er $ this-> price dollars.";  $ catch22 = nytt element (); $ catch22-> itemType = "Book"; $ catch22-> price = 25; $ Catch22-> printPrice (); / * utganger Prisen på denne boken er 25 dollar. * / $ americanPrayer = ny vare (); $ americanPrayer-> itemType = "CD"; $ americanPrayer-> price = 22; $ AmericanPrayer-> printPrice (); / * utganger Prisen på denne CDen er 22 dollar * / 

Merk at i dette eksemplet er $ catch22 og $ americanPrayer 2 objekter. Objekter er forekomster av en klasse. De deler den felles strukturen som klassen definerer. Denne fellesstrukturen består av egenskapene ($ itemType og $ pris i eksempelet ovenfor) og metoder (funksjoner; printPrice () i eksemplet ovenfor) i klassen. Egenskapene til forskjellige objekter kan imidlertid være forskjellige.

I eksemplet ovenfor er prisen og gjenstandstypen forskjellig for 2 gjenstander av samme klasse. Men begge objektene har en printPrice () metode, a pris eiendom og en elementtype eiendom som kan brukes.

Sammenligningstabell

Klasse mot Objekt sammenligning diagram
KlasseGjenstand
Definisjon Klasse er mekanisme for bindende data medlemmer og tilhørende metoder i en enkelt enhet. Forekomst av klasse eller variabel i klassen.
Eksistens Det er en logisk eksistens Det er fysisk eksistens
Minneallokering Minneplass er ikke tildelt når det er opprettet. Minneplass er tildelt, når det er opprettet.
Erklæring / definisjon Definisjonen opprettes en gang. det er laget mye tid som du trenger.

Spesielle tilfeller

I noen programmeringsspråk, f.eks. Python, alt er et objekt. Dette betyr at funksjoner, variabler, forekomster av en klasse og til og med faktiske klasser behandles som objekter av programmeringsspråket.