Студопедия — Классы. Наследование
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Классы. Наследование






Полиморфизм – это возможность класса-наследника менять реализациюбазового класса, сохраняя его интерфейс при этом.

Все созданные нами классы наследуются от системного класса object.

Наследование позволяет создавать группы связанных классов. Варианты наследования:

· классическое наследование (отношение «является»);

· наследование через включение (отношение «имеет»).

Для примера создадим класс Animals. Также создадим классы для животных, в каждом из которых будут объявлены соответствующие поля для инициализации клички и возраста:

Допустим нам понадобится добавить переменную, которая показывает вес животного. В таком случае придется добавить в каждый класс по соответствующему полю. Само собой это нецелесообразно. Данная проблема решается с помощью наследования классов.

Вначале необходимо определить родительский базовый класс, от которого будут создаваться наследники – дочерние классы. В нашем классе тигр, лев, жираф – это животные, то есть можно сделать базовым класс Animals, остальные – дочерними. Во всех дочерних классах присутствуют общие обьекты: Name, Age, можно вынести их в родительский класс Animals:

Теперь воспользуемся классическом наследованием («является»). В нашем примере тигр, слон являются животными. Создадим дочерний класс Tiger. Для того, чтобы указать, что класс – дочерний, необходимо после названия класса через двоеточие написать название базового класса:

Теперь создадим объекты класса:

Хоть мы и не объявляли эти свойства в классе Tiger, мы все равно имеем возможность воспользоваться ими, потому что они были объявлены в базовом классе.

Дочерний класс может наследовать только один базовый класс (то есть нельзя класс Tiger наследовать одновременно от нескольких классов Animals, Zoo, Beasts, необходимо выбрать один из них). Данная проблема решается в интерфейсах.

Sealed (запечатанный) – запрещает наследоваться от данного класса. Пишется при объявлении класса перед его названием:

Теперь Elephant может наследовать от других классов, но ни один класс не сможет быть наследованным от него.

Полезный инструмент:







Дата добавления: 2015-06-12; просмотров: 458. Нарушение авторских прав; Мы поможем в написании вашей работы!



Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

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

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

Тактические действия нарядов полиции по предупреждению и пресечению групповых нарушений общественного порядка и массовых беспорядков В целях предупреждения разрастания групповых нарушений общественного порядка (далееГНОП) в массовые беспорядки подразделения (наряды) полиции осуществляют следующие мероприятия...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Функциональные обязанности медсестры отделения реанимации · Медсестра отделения реанимации обязана осуществлять лечебно-профилактический и гигиенический уход за пациентами...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия