Наследование. Когда мы говорим об объектах, мы говорим, что они являются экземплярами классов. Что это означает? Рассмотрим следующую аналогию. Практически все компьютерные

Классы

Когда мы говорим об объектах, мы говорим, что они являются экземплярами классов. Что это означает? Рассмотрим следующую аналогию. Практически все компьютерные языки имеют стандартные типы данных; например, в C++ есть целый тип int. Мы можем определять переменные таких типов в наших программах:

int day:

int count;

int divisor:

int answer:

Класс является своеобразной формой, какие данные и функции будут включены в объект класса. При объявлении класса не создаются никакие объекты этого класса, по аналогии с тем, что существование int еще не означает существование переменных этого типа.

Класс является описанием совокупности сходных между собой объектов.

               
   
 
     


Пример понимания класса:

Принц, Стинг, Мадонна относятся к классу рок-музыкантов, однако не существует конкретного человека с именем рок-музыкант. Люди со сходными чертами (свойствами-характеристиками), но уникальными именами являются объектами этого класса. Объект класса часто также называют экземпляром класса.

Понятие класса дает возможность ввести понятие наследования. Пример классов: класс животных можно разбить на подклассы: млекопитающие, земноводные, насекомые, птицы и т.д. Класс наземный транспорт делится га подклассы: автомобили, грузовики, автобусы, мотоциклы и т.д.

Принцип, положенный в основу такого деления, заключается в том, что каждый подкласс обладает свойствами, присущими тому классу, из которого выделен данный подкласс. Автомобили, грузовики, автобусы и мотоциклы обладают колесами и мотором, являющиеся характеристиками наземного транспорта. Кроме общих свойств подклассы могут иметь и собственные свойства. Например, автобусы имеют большое количество пассажирских мест, а грузовики обладают значительным пространством для перевозки грузов.

           
   
Базовый класс
 
 
 
   
Производные классы


Вопросы

1. Языки Pascal, BASIC и С являются________________________ (процедурными) языками, в то время как C++ является__________________________ (объектно-ориентированными) языком.

2. В качестве образца по отношению к объекту выступает:

а) метод;

б) класс;

в) операция;

г) значение.

3. Двумя основными компонентами объекта являются _________ (данные) и функции, которые_____________ (совершают действия над ними).

4. В C++ функцию, входящую в состав класса, называют:

а) функция-член класса;

б) оператор класса;

в) функция класса;

г) метод класса.

5. Защита данных от несанкционированного доступа другими функциями называется_________________ (сокрытием данных).

6. Какие из перечисленных ниже причин являются главными для использо­вания объектно-ориентированных языков?

а) возможность создания собственных типов данных;

б) простота операторов объектно-ориентированных языков по сравнению с процедурными языками;

в) наличие средств для автокоррекции ошибок в объектно-ориентированных языках;

г) объектно-ориентированные программы легче концептуализируются.

7. (Объекты) отображают объекты реального мира точнее, чем функции.

8. Истинно ли утверждение: программа на C++ в целом схожа с программой на С за исключением незначительных различий в кодировании. Ложно: организационные принципы различаются

9. Объединение данных и функций называется_________ _.(Инкапсуляция)

10. Если язык обеспечивает возможность создания пользовательских типов данных, то говорят, что язык называется:

а) наследуемым;

б) инкапсулируемым;

в) перегруженным;

г) расширяемым.

11. Верно или неверно утверждение: двух операторов достаточно, чтобы легко отличить программу на C++ от программы на С. Ложно: большинство строк кода на С++ ничем не отличается от кода на С

12. Возможность выполнения оператором или функцией различных действий в зависимости от типа операндов называется ________ полиморфизмом.

13. Операция, выполняющая заданные действия над пользовательским типом данных, называется:

а) полиморфической;

б) инкапсулированной;

в) классифицированной;

г) перегруженной.

14. Запоминание новых терминов языка C++:

а) является очень важным;

б) можно отложить «на потом»;

в) служит ключом к успеху и процветанию;

г) бессмысленно.

15. Универсальный язык моделирования — это:

а) программа для построения физических моделей;

б) средство визуализации организации программы;

в) результат объединения языков C++ и FORTRAN;

г) вспомогательное средство при разработке программного обеспечения.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: