Разница между суперклассом и подклассом

Оглавление:

Разница между суперклассом и подклассом
Разница между суперклассом и подклассом

Видео: Разница между суперклассом и подклассом

Видео: Разница между суперклассом и подклассом
Видео: Наследование в Java: Суперкласс и подклассы, создание суперкласса, подкласса. Плюсы наследования 2024, Май
Anonim

Ключевое различие - суперкласс против подкласса

В объектно-ориентированном программировании (ООП) система моделируется с помощью объектов. Эти объекты создаются с использованием класса. Класс - это план или описание для создания объекта. Создание объекта также известно как создание экземпляра объекта. Каждый объект взаимодействует с другими объектами. Программа или программное обеспечение могут быть разработаны с использованием объектно-ориентированного программирования. Наследование - основная концепция ООП. Это улучшает возможность повторного использования кода. Вместо того, чтобы реализовывать программу с самого начала, он позволяет наследовать свойства и методы уже существующего класса новому классу. Это помогает сделать программу более управляемой. Суперкласс и подкласс - это два термина, которые связаны с наследованием. В этой статье обсуждается разница между суперклассом и подклассом. Ключевое различие между суперклассом и подклассом состоит в том, что суперкласс - это существующий класс, от которого происходят новые классы, а подкласс - это новый класс, наследующий свойства и методы суперкласса.

СОДЕРЖАНИЕ

1. Обзор и основные отличия

2. Что такое суперкласс

3. Что такое подкласс

4. Сходства между суперклассом и подклассом

5. Параллельное сравнение - суперкласс и подкласс в табличной форме

6. Резюме

Что такое суперкласс?

В наследовании существующий класс, от которого происходят новые классы, называется суперклассом. Он также известен как родительский или базовый класс.

Есть разные типы наследования. Это проиллюстрировано на следующих примерах. Рассмотрим AB и C как классы.

Разница между суперклассом и подклассом
Разница между суперклассом и подклассом

Рисунок 01: Типы наследования

Разница между суперклассом и подклассом Рисунок 02
Разница между суперклассом и подклассом Рисунок 02

Рисунок 02: Гибридное наследование

Согласно приведенным выше схемам, суперклассы различаются в зависимости от типа наследования. В одноуровневом наследовании A - это суперкласс. В многоуровневом наследовании A является суперклассом для B, а B - суперклассом для C. В иерархическом наследовании A является суперклассом для B и C. При множественном наследовании и A, и B являются суперклассами для C.

Гибридное наследование - это сочетание многоуровневого и множественного наследования. На левой диаграмме A - это суперкласс для B, C и B, C - суперклассы для D. На правой диаграмме A - суперкласс для B и B, D - суперклассы для C.

См. Приведенную ниже программу, написанную на Java.

Ключевое различие между суперклассом и подклассом
Ключевое различие между суперклассом и подклассом

Рисунок 03: Программа наследования в Java

Согласно приведенной выше программе, класс A имеет методы sum () и sub (). Класс B имеет метод multiply (). Класс B расширяет класс A. Следовательно, свойства и методы класса A доступны классу B. Следовательно, класс A является суперклассом. Для создания объекта берется ссылочный тип класса B. Таким образом, объекту доступны все методы, такие как sum (), sub () и multiply (). Если ссылочный тип суперкласса используется для создания объекта, члены класса B не могут быть доступны. например, A obj = new B (); Следовательно, ссылка на суперкласс не может вызывать метод multiply (), потому что этот метод принадлежит классу B.

Что такое подкласс?

Согласно приведенным выше диаграммам, подклассы различаются от каждого типа наследования. В одинарном наследовании B является подклассом. При многоуровневом наследовании B является подклассом A, а C - подклассом B. В иерархическом наследовании B и C являются подклассами A. При множественном наследовании C является подклассом для A и B.

В гибридном наследовании диаграмма слева, B и C - подклассы A. D - подкласс B и C. На диаграмме справа B - подкласс A. C - подкласс B и D.

Согласно приведенной выше программе наследования, класс B расширяет класс A. Следовательно, все свойства и методы класса A доступны классу B. Класс B - это новый класс, наследующий от класса A. Он известен как подкласс. Он также известен как дочерний или производный класс. Класс B имеет метод multiply (), и он также может обращаться к методам sum () и sub () класса A с использованием наследования.

В чем сходство между суперклассом и подклассом?

Оба связаны с наследованием

В чем разница между суперклассом и подклассом?

Различать статью в середине перед таблицей

Суперкласс против подкласса

При реализации наследования существующий класс, от которого производятся новые классы, является суперклассом. При реализации наследования класс, наследующий свойства и методы суперкласса, является подклассом.
Синонимы
Суперкласс известен как базовый класс, родительский класс. Подкласс известен как производный класс, дочерний класс.
Функциональность
Суперкласс не может использовать свойства и методы подкласса. Подкласс может использовать свойства и методы суперкласса.
Одноуровневое наследование
Есть один суперкласс. Есть один подкласс.
Иерархическое наследование
Есть один суперкласс Есть много подклассов.
Множественное наследование
Есть много суперклассов. Есть один подкласс.

Резюме - суперкласс против подкласса

Наследование - это концепция ООП. Он позволяет использовать свойства и методы существующего класса для доступа новому классу. Унаследованный класс - это суперкласс, а производный класс - это подкласс. Разница между суперклассом и подклассом заключается в том, что суперкласс - это существующий класс, от которого производятся новые классы, а подкласс - это новый класс, который наследует свойства и методы суперкласса.

Скачать PDF-файл Superclass vs Subclass

Вы можете загрузить PDF-версию этой статьи и использовать ее в автономных целях в соответствии с примечанием к цитированию. Пожалуйста, скачайте PDF-версию здесь. Разница между суперклассом и подклассом.

Рекомендуем: