Об'єктно-Пріентірованное Програмування в Delphi (ООП): основи
Класичний мова Pascal дозволяє програмісту визначати свої власні складні типи даних - записи (records). Мова Delphi. підтримуючи концепцію об'єктно-орієнтованого програмування, дає можливість визначати класи. Клас - це складна структура, що включає, крім опису даних, опис процедур і функцій, які можуть бути виконані над представником класу - об'єктом.
Очевидно, що такий спосіб доступу до полів об'єкта більш природний.
Якщо в програмі будь-якої об'єкт більше не використовується, то можна звільнити пам'ять, займану полями даного об'єкта. Для виконання цієї дії використовують метод-деструктор Free, Наприклад, для того, щоб звільнити пам'ять, займану полями об'єкта professor, достатньо записати professor. Free;
Наприклад, інструкція professor. Show;
викликає застосування методу Show до об'єкта professor. Фактично інструкція застосування методу до об'єкта - це специфічний спосіб запису інструкції виклику процедури.
Методи класу визначаються в програмі точно так же, як і звичайні процедури і функції, за винятком того, що ім'я процедури або функції, що є методом, складається з двох частин: імені класу, до якого належить метод, і імені методу. Ім'я класу від імені методу відокремлюється крапкою.
Нижче наведено приклад визначення методу show класу TPerson:
// метод Show класу TPerson
Інкапсуляція і властивості об'єкта
Під инкапсуляцией розуміється приховування полів об'єкта з метою забезпечення доступу до них тільки за допомогою методів класу.
У язикеDelphi обмеження доступу до полів об'єкта реалізується за допомогою властивостей об'єкта. Властивість об'єкта характеризується полем, сохра-
няющих значення властивості, і двома методами, що забезпечують доступ до поля властивості. Метод установки значення властивості називається методом
записи властивості (write), а метод отримання значення властивості - методом читання властивості (read)
В описі класу перед ім'ям властивості записують слово property (властивість). Після імені властивості вказується його тип, потім - імена методів, що забезпечують доступ до значення властивості. Після слова read вказується ім'я методу, що забезпечує читання властивості, після слова write - ім'я методу, що відповідає за запис властивості.
Нижче наведено приклад опису класу TPerson, що містить дві властивості: Name І Address.