1. Яке ключове слово входить до опису об’єктного типу в Delphi?
а) class
б) object
в) ClassOfObject
2. Як називається найзагальніший з напередвизначених класів (TObject)
3. Рівень доступності/захищеності елементів класу визначається одним з ключових слів:
а) public, published, protected, private
б) public, private
в) private
4. Стандартні імена для конструкторів та деструкторів у Delphi
а) Init; Done
б) Create; Destroy
в) Constructor; Destructor
5. Різновиди методів у Delphi
а) статичні, віртуальні, динамічні та абстрактні.
б) статичні, віртуальні, динамічні
в) статичні, віртуальні, дружні
Курс лекцій
з предмету «Об’єктно орієнтоване програмування»
Частина 2 – «Об’єктно орієнтоване програмування в мові C++»
Зміст
Тема 9 Об’єктно-орієнтоване програмування в C++. Об’єкти і класи в С++
Тема 10. Перезавантаження операцій в С++
Тема 9 Об’єктно-орієнтоване програмування в C++. Об’єкти і класи в С++
Створення простого класу
Визначення класу
Приховування даних
Дані класу
Методи класу
Приховування даних і доступність функцій
Методи класу всередині визначення класу
Використання класу
Повідомлення
Об’єкти програми і об’єкти реального світу
Клас як тип даних
Конструктори
Деструктори
Визначення методів класу поза класом та операція глобального дозволу
Об’єкти в якості аргументів
Конструктор копіювання за замовчуванням
Об’єкти, що повертаються функцією
Класи, об’єкти та пам’ять
Статичні дані класу
Роздільне оголошення і визначення полів класу
Константні методи
Константні об’єкти
Підсумок
Питання по темі
Мова С++ є класикою об’єктного програмування: вона створювалася саме з метою якомога повніше втілити ООП-підхід. Але, оскільки ми вже ознайомлені з принципами ООП і деякими способами його втілення, то відразу ж розпочнемо зі створення простого об’єктного класу, а потім будемо робити необхідні пояснення. Зауважимо тільки, що об’єктний тип в С++, як і в Delphi, називається класом, конкретні представники цього класу - об’єктами.
Створення простого класу
Наш перший приклад містить клас і два об’єкти цього класу. Попри свою простоту, він демонструє синтаксис і основні риси класів. Лістінг програми приведений нижче (програма 9.1)
#include <iostream.h>
#include <conio.h>
#include <bios.h>
class smallobj
{private:
int somedata;
public:
void setdata(int d)
{somedata=d;}
void showdata()
{cout <<"Значення поля="<<somedata<< endl;};
};
int main()
{ clrscr();
smallobj s1,s2;
s1.setdata(3066);
s2.setdata(3776);
s1.showdata();
s2.showdata();
bioskey(0);
return 0;
}
Програма 9.1
Клас smallobj, визначений у цій програмі, містить одне поле даних і два методи. Методи забезпечують доступ до поля даних класу. Перший з методів присвоює полю значення, а другий метод виводить це значення на екран. Поле оголошене як захищене (private: зверніть увагу на вертикальну двокрапку після ключового слова, вона обов’язкова), метод як відкритий (public: )
В програмі описані дві змінні об’єктного типу, вони є екземплярами класу smallobj.