Поля и методы при наследовании
Класс−потомок наследует структуру (все элементы данных) и поведение (все методы) базового класса. Класс−наследник получает в наследство все поля базового класса (хотя, если они были приватные, доступа к ним ему запрещён). Если новые поля не добавляются, размер класса−наследника совпадает с размером базового класса. Порожденный класс может добавить собственные поля:
Дополнительные поля производного класса могут совпадать и по имени, и по типу с полями базового класса — в этом случае новые поля скрывают поля базового класса, поэтому для доступа к полям базового класса в классе−наследнике необходимо использовать префикс−квалификатор базового класса.
Класс−потомок наследует все методы базового класса, кроме операции присваивания — она создается для нового класса автоматически, если не определена явно. В классе−наследнике можно определять новые методы. В новых методах разрешается вызывать любые доступные методы базового класса.
Если в классе−наследнике имя метода и его прототип совпадают с именем метода базового класса, то говорят, что метод производного класса скрывает метод базового класса. Чтобы вызвать метод родительского класса, необходимо указывать его с квалификатором класса.
Дата добавления: 2015-07-30; просмотров: 987;