Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
assistance.doc
Скачиваний:
1
Добавлен:
25.09.2019
Размер:
90.62 Кб
Скачать

Языки программирования и методы трансляции. Ответы на экзаменационные вопросы.

1 Курс 2 семестр

2012 год

Рекомендации:

Друзья! Если Вы хотите более точную и своевременную информацию, тогда предоставляйте ту информацию, которой обладаете.

Если бы каждый скинул всего, лишь по 2 лекции, тогда ответы на билеты появились бы гораздо раньше, ежели в последний день.

Отдельная благодарность Васильевой Екатерине и пожелавшему остаться неизвестным студенту УВП 1-ого курса.

Всего наилучшего,

Настенька.

1 Вопрос.

Основные парадигмы программирования. Инкапсуляция. Наследование. Полиморфизм.

Парадигма программирования – это стиль написания программ, который подчиняется определенным идеям и правилам.

Основные парадигмы программирования:

1). Процедурное программирование.

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

Например, FORTRAN

2). Структурное программирование.

Акцент сместился с организации процедур на ориентацию структур данных.

Например, ALGOL-60, Pascal, Modula-2, C.

3). Модульное программирование.

Возникла идея объединить данные и процедуры их обработки в более крупные блоки – модули.

Например, FORTRAN-II, Кобол.

4). Объектно-ориентированное программирование(ООП).

По мере усложнения появились идеи классов – объединения данных и процедур их обработки. Отличие в том, что кроме процедур класс содержит описание объекта и используется для создания объектов.

Например, Object Pascal, C++, Java.

Основные принципы ООП:

1). Инкапсуляция – механизм, который связывает данные с процедурами их обработки и сохраняет их в безопасности, как от внешнего влияния, так и от ошибок использования.

2). Наследование – процесс построения иерархии классов, когда потомки наследуют все свойства своих предков, могут изменять их и добавлять новые.

3). Полиморфизм – свойство, позволяющее одинаково называть процедуры сходные по смыслу, но рассматривать их действия по разному.

2 Вопрос.

Определение класса на языке С++. Спецификаторы доступа к членам класса. Оператор разрешения видимости.

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

Внутри класса интерфейс описывается прототипами.

Данные именуются полями, а функции – методами.

Описание синтаксиса простого класса:

class <имя класса> {[private:]<описание скрытых элементов класса>public:<описание доступных элементов>};

Есть несколько замечаний при описании синтаксиса класса:

1). При описании данных одного типа, они могут быть объединены;

2). Для обращения к элементам класса нужно указывать только имя;

3).В описании класса можно описать определение метода, если его тело является коротким.

Спецификаторы доступа управляют видимостью элементов класса.

Рекомендуется поля объявлять закрытыми(private), а методы для доступа к ним открытыми(public). Элементы, описанные после private, видимы только внутри класса, то есть к ним невозможно обратиться из функции, не являющейся элементом класса. Это позволяет говорить о таком признаке ООП, как инкапсуляция.

При определении метода вне класса необходимо сообщить компилятору, к какому классу он принадлежит, с помощью оператора доступа к области видимости ‘::’.

Например, void complex1::display() {…}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]