Класа против објекта
Објектно оријентисано програмирање или ООП је веома популаран стил програмирања, због његове могућности да обрађује сложеније апликације са пуно више кода. То је зато што податке организује у објекте који су упоредиви са стварним животним објектима. Класа и објект су два појма која се уобичајено користе у ООП-у. У свом најосновнијем облику објекти су примера класе.
Да бисте користили објекте у програму, морате да декларирате својства и процедуре у класи. Да бисмо то боље визуализовали, разговарајмо о томе на примеру. Ако желите да направите програм који се бави возилима, мораћете да створите класу за возила. У класи бисте створили променљиве које ће садржавати информације релевантне за возила. Вриједности као што су путнички капацитет, највећа брзина и капацитет горива типични су за поступке попут покретања и заустављања. Након креирања класе за возила, сада можете креирати предмете у својој апликацији који су засновани на класи возила. Можете креирати објект зван аутомобил или мотоцикл који је заснован на возилима. Затим можете да испуните релевантне информације о објекту и користите их онако како сматрате да се уклапа у вашу апликацију.
Као што сте већ могли закључити из примера који је горе разматран, информације које ћете заиста користити у апликацији се чувају у објекту, а не у класи. Класа само дефинише структуру података и шта свака процедура или функција раде.
Друга одлична карактеристика наставе је способност насљеђивања својстава и поступака из друге класе. Класе које наслеђују својства других класа називају се подкласе. Ово скраћује рад потребан за дефинисање друге класе. Ако желите да дефинишете класу специфичну за аутомобиле, једноставно можете наследити својства и поступке у класи возила, јер су сви аутомобили возила и показују исте карактеристике. Исто се не чини с објектима, јер стварно нема практичне употребе за глобално насљеђивање података објекта. Основна пракса програмера је креирање поткласа и креирање објекта из подразреда.
Резиме:
1. Објект је инстанца класе.
2. Дефинишете сва својства и функције у класи док их користите у објекту.
3. Класе не садрже никакве информације, док предмет има.
4. Можете да креирате поткласе, али не и под-објекте.