Читайте также:
|
|
Методов (компонентных функций) и
(или) компонентных данных баз класса могут
Быть по-новому определены в производном классе.
В этом случае соответств компоненты баз.
Класса становятся недоступными из производственного класса. Для доступа
Из производственного класса к компонентам
Базового класса, имена которых
Повторно определены в производном,
используется операция ‘::’ указания (
Уточнения) области видимости.
Наследование в иерархии классов
Может отображаться и в виде дерева, и в виде
Более общего направленного ациклического графа. В иерархии классов соглашение отн-но
Доступности компонентов класса следующее.
Собственные (private) методы и данные доступны только внутри того класса, где они определены.
Защищенные (protected) компоненты доступны внутри класса, в котором они определены, и дополнительно доступны во всех производных классах.
Общедоступные (public) компоненты класса видимы из любой точки программы, т.е. являются глобальными.
Вид наследования определяет, что происходит с видом доступа в производных классах.
Правила наследования: Конструкторы не наследуются, поэтому производный класс должен иметь собственные конструкторы. Порядок вызова конструкторов определяется приведенными ниже правилами:
Если в конструкторе производного класса явный вызов конструктора базового класса отсутствует, автоматически вызывается конструктор базового класса по умолчанию (то есть тот, который можно вызвать без параметров).
Для иерархии, состоящей из нескольких уровней, конструкторы базовых классов вызываются начиная с самого верхнего уровня. После этого выполняются конструкторы тех элементов класса, которые являются объектами, в порядке их объявления в классе, а затем исполняется конструктор класса.
Дата добавления: 2015-10-02; просмотров: 39 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Наследование классов. | | | Наличие нескольких прямых базовых классов называют множественным наследованием. |