Содержание
- Главное отличие
- Сравнительная таблица
- Одиночное наследование
- Множественное наследование
- Ключевые отличия
Главное отличие
Одиночное наследование определяется как производный класс, используемый для наследования свойств и их природы от одного родительского класса, который обладает всеми функциями, необходимыми для запуска программы. Множественное наследование определяется как тип, используемый основными объектно-ориентированными языками программирования, где характеристики, существующие в родительском объекте или классе, могут передаваться новому объекту или классу.
Сравнительная таблица
основа | Одиночное наследование | Множественное наследование |
Определение | Производный класс, используемый для наследования свойств и их природы от одного родительского класса, который имеет все функции, необходимые для запуска программы. | Тип, используемый основными объектно-ориентированными языками программирования, где характеристики, которые существуют в родительском объекте или классе, могут быть переданы новому объекту или классу. |
База | Производный класс получает единственную базу. | Производный класс получает два или более двух базовых классов. |
Доступ | Производный класс всегда обращается к функциям файла, с которым они связаны. | Производный класс получает доступ ко всем функциям базовых классов, к которым он подключен. |
Природа | Публичные, частные и защищенные сети. | Публичные, частные и защищенные сети. |
Поведение | Поведение остается таким же, как родитель. | Поведение становится смесью обоих родителей. |
Одиночное наследование
Одиночное наследование определяется как производный класс, используемый для наследования свойств и их природы от одного родительского класса, который обладает всеми функциями, необходимыми для запуска программы. Это помогает с наследованием свойств для производного класса и природы базового класса, а затем открывает возможность повторного использования кода и добавляет новые функции в существующую систему. Одиночное наследование позволяет предполагаемому классу приобретать свойства и поведение от отдельного родительского класса. Это позволяет понять уровень приобретения свойств и поведения базового класса, впоследствии расширяя возможности повторного использования кода и дополнительно добавляя новые компоненты в текущую систему. Это делает систему значительно более продуктивной и менее избыточной. Наследование является одним из ключевых элементов протестного программирования (ООП). Одиночное наследование является более безопасным, чем многие наследства, если оно правильно приближено. Это дополнительно дает возможность определенному классу вызывать использование родительского класса для конкретной стратегии, если этот метод отменяется в предполагаемом классе или в конструкторе родительского класса. В тот момент, когда класс усиливает другой уровень именно в этой точке, мы называем это уединенным наследием. Нижеследующая потоковая диаграмма демонстрирует, что класс B расширяет только один тип, который является A. Здесь A будет родительским классом B, а B будет классом Tyke A. Идея наследования используется как часть многих диалектов программирования, включая C ++, Java, PHP, C # и Visual Basic. Java и C # расширяют возможности Single Inheritance, в то время как различные диалекты, такие как C ++, поддерживают многие наследства.
Множественное наследование
Множественное наследование определяется как класс, используемый первичными объектно-ориентированными языками программирования, в котором характеристики, существующие в родительском объекте или классе, могут передаваться новому объекту или классу, а процесс наследования завершается добавлением новых функций. Множественное наследование является компонентом некоторых протестированных диалектов программирования на ПК, в которых вопрос или класс могут приобретать атрибуты и элементы из более чем одного родительского протеста или родительского класса. Это безошибочно из единственного наследования, где класс протестующего может просто получить от одного определенного вопроса или класса. Различные элементы наследия некоторых протестных программных диалектов, в которых класс или субъект получают атрибуты и свойства от более чем одного родительского класса или протеста. Это противоречит единственному наследственному свойству, которое позволяет демонстрации или классу приобрести один конкретный вопрос или класс. Несмотря на то, что есть несколько преимуществ, связанных с множественным наследованием, оно увеличивает неопределенность и многогранность, если не обозначено или не выполнено надлежащим образом. Различное наследование исполнения - это способность получать определения техники из разных классов. Проблемы возникают с такого рода многочисленным наследованием, например, конфликты имен и двусмысленность. Аналогичным образом, разработчик программного обеспечения может невольно представить борьбу с именами, добавив другую технику в суперкласс. Стратегии по умолчанию показывают один тип различного наследия использования. Класс может реализовывать более одного интерфейса, который может содержать политики по умолчанию с похожим именем. Компилятор Java дает несколько принципов, чтобы выяснить, в какой системе по умолчанию используется отдельный класс.
Ключевые отличия
- Одиночное наследование определяется как производный класс, используемый для наследования свойств и их природы от одного родительского класса, который обладает всеми функциями, необходимыми для запуска программы. Множественное наследование определяется как тип, используемый основными объектно-ориентированными языками программирования, где характеристики, существующие в родительском объекте или классе, могут передаваться новому объекту или классу.
- Производный класс получает единый базовый класс, когда речь идет об одиночном наследовании. С другой стороны, производный класс получает два или более двух базовых классов.
- Производный класс для одного наследования всегда обращается к функциям файла, с которым они связаны. С другой стороны, производный класс для множественного наследования получает доступ ко всем функциям базовых классов, к которым он подключен.
- Как одиночное, так и множественное наследование имеют одинаковый коэффициент видимости и, следовательно, имеют открытые, частные и защищенные сети.
- Время выполнения для одного процесса наследования требует небольшого времени для выполнения различных задач. С другой стороны, время выполнения процесса множественного наследования требует больше времени для завершения различных процессов.
- Поведение для одного наследования остается тем же, что и у родителя. Принимая во внимание, что поведение множественного наследования становится смесью обоих родителей.