Відмінності між версіями «Класи. Об'єкти. Посилання.»
(Створена сторінка: === Клас та об'єкт === <b>Клас</b> - це якась структура даних і методів, яка дозволяє описати дея…) |
|||
Рядок 15: | Рядок 15: | ||
Тепер про те, як описується клас в PHP на прикладі опису класу автомобілів: | Тепер про те, як описується клас в PHP на прикладі опису класу автомобілів: | ||
− | + | <? | |
− | + | class Car | |
− | + | { | |
− | + | protected $bodyColor; // властивість «колір кузова» | |
− | + | protected $fuelRate; // властивість «расход топлива» | |
− | + | protected $engineVolume; // властивість «об'єм двигуна» | |
− | + | ||
− | + | public function accelerate() | |
− | + | { | |
− | + | // довавте галузь | |
− | + | // … | |
− | + | } | |
− | + | ||
− | + | public function slowdown() | |
− | + | { | |
− | + | // тормозити | |
− | + | // … | |
+ | } | ||
+ | } | ||
+ | ?> |
Версія за 03:04, 20 травня 2010
Клас та об'єкт
Клас - це якась структура даних і методів, яка дозволяє описати деякий об'єкт (до речі, об'єкт - це вже інше поняття). А якщо говорити простими словами, то можна привести наочний приклад.
Розглянемо автомобіль. У автомобіля є властивості і є функції, які він може виконувати. Серед властивостей можна виділити, наприклад, витрата палива, колір кузова, об'єм двигуна, тип кузова, тип коробки передач і т.д. Основні функції автомобіля - їхати вперед / назад, повернути ліворуч / праворуч і т.д.
Автомобіль ЗАЗ 968М - належить до класу легкових автомобілів. Або Subaru Forester - теж належить до класу легкових авто. Різниця між запорожцем і субару звичайно суттєва, але насправді вони мають багато спільного - ті ж колір кузова, розхід палива і т.ін. Тому ці дві контрастно-розрізняються машини можна виділити в один клас - клас легкових авто.
Ці дві машини є двома абсолютно різними об'єктами. Зрозуміло, що вони сильно розрізняються. І нехай у мене кине камінь той, хто зі мною не погодиться.
От я і навів приклад, що таке клас, а що таке об'єкт.
Властивості та методи
Тепер про те, як описується клас в PHP на прикладі опису класу автомобілів:
<? class Car { protected $bodyColor; // властивість «колір кузова» protected $fuelRate; // властивість «расход топлива» protected $engineVolume; // властивість «об'єм двигуна» public function accelerate() { // довавте галузь // … } public function slowdown() { // тормозити // … } } ?>