- •Группа 1
- •Что такое класс? Что такое объект? Какая связь между классом и объектом?
- •В чем особенности вызова конструкторов базового класса из производного?
- •Ключевое слово using
- •Группа 2
- •Конструктор вызывается при создании объекта. Оператор присваивания если объект уже существует.
- •К чему может быть применено ключевое слово static? Какие эффекты оно имеет?
Что такое класс? Что такое объект? Какая связь между классом и объектом?
Класс — это шаблон для создания объектов в программе, тогда как объект — это экземпляр класса.
Класс — это логическая сущность, а объект — физическая сущность.
Класс не выделяет пространство памяти; с другой стороны, объект выделяет пространство памяти.
Вы можете объявить класс только один раз, но вы можете создать более одного объекта, используя класс.
Классами нельзя манипулировать, а объектами можно манипулировать.
Классы не имеют никаких значений, тогда как объекты имеют свои собственные значения.
В частности, каждый объект является экземпляром какого-либо класса; класс может порождать любое число объектов. Любой созданный объект относится к строго фиксированному классу. Сами объекты, напротив, в процессе выполнения программы создаются и уничтожаются.
Класс - единица абстракции. Универсальный тип данных, являющейся информационной моделью
Объект - экземпляр класса, хранящийся в памяти
Что такое метод класса? Как вызвать метод класса? Как вызвать метод класса через указатель?
Метод класса — это блок кода, состоящий из ряда инструкций, который можно вызывать по его имени.
Вызов через точку к объекту класса.
Вызов через стрелочку к указателю на объект класса.
Методы - функции связанные с классом. Определяют действия, которые можно выполнить над объектом, и которые объект может выполнить
Что такое поле класса? Как получить доступ к полю класса?
Поля класса – это переменные, определенные на уровне класса.
Доступ к полям осуществляется по их имени. В зависимости от модификатора доступа.
Поля данных - параметры (свойства) объекта определяющие его состояние. Переменные, объявленные как принадлежащие классу
Какие модификаторы доступа к методам и полям класса есть? В чем их различия?
Public — доступ открыт всем другим классам, кто видит определение данного класса.
Protected — доступ открыт классам, производным от данного. То есть, производные классы получают свободный доступ к полям или методам. Все другие классы такого доступа не имеют.
Private — доступ открыт только самому классу (т.е. функциям-членам данного класса) и друзьям (friend) данного класса - как функциям, так и классам.
Что такое конструктор и деструктор класса?
Конструктор - функция, предназначенная для инициализации объектов класса.
Деструктор – это особый вид метода, применяющийся для освобождения памяти, занимаемой объектом.
Когда деструктор класса вызывается неявно?
Деструктор вызывается автоматически, когда объект выходит из области видимости:
– для глобальных объектов – как часть процедуры выхода из функции main;
– для локальных объектов – при выходе из блока, в котором они объявлены;
– для объектов, заданных через указатели, деструктор вызывается неявно при использовании операции delete.
Какое время жизни у объекта?
С конструктора до деструктора.
Время жизни глобального объекта начинается с момента запуска программы и заканчивается с ее завершением.
Автоматический объект существует с момента активизации функции, в которой он определен, до выхода из нее. Регистровый объект – это автоматический объект, для которого поддерживается быстрое считывание и запись его значения. Локальный статический объект располагается в области памяти, существующей на протяжении всего времени выполнения программы.
Временем жизни динамических объектов управляет программист.
Что такое UML? Какие сущности есть в UML и как они отображаются?
UML, или Unified Modeling Language, — это унифицированный язык моделирования. Его используют, чтобы создавать диаграммы и схемы для визуализации процессов и явлений.
Диаграммы классов оперируют тремя видами сущностей UML:
Структурные сущности – это «имена существительные» в модели UML. В основном, статические части модели, представляющие либо концептуальные, либо физические элементы. Основным видом структурной сущности в диаграммах классов является класс.
Поведенческие сущности – динамические части моделей UML. Это «глаголы» моделей, представляющие поведение модели во времени и пространстве. Сообщение изображается в виде линии со стрелкой, почти всегда сопровождаемой именем операции.
Аннотирующие сущности – это поясняющие части UML-моделей, иными словами, комментарии, которые можно применить для описания, выделения и пояснения любого элемента модели.
