Наследование — один из трех основных принципов объектно-ориентированного программирования.
Позволяет создавать иерархические классификации.
С помощью наследования можно создать общий класс, определяющий характеристики, общие для набора связанных элементов.
Этот общий класс может быть унаследован другими более конкретными классами, которые добавляют эксклюзивные характеристики.
На жаргоне Java унаследованный класс называется суперклассом.
Наследующий класс называется подклассом.
Подкласс — это специализированная версия суперкласса.
Подкласс наследует все переменные и методы суперкласса и добавляет свои собственные уникальные элементы.
Основные аспекты наследования
Java поддерживает наследование, позволяя одному классу включать в свое объявление другой класс.
Это делается с помощью ключевого слова Extension.
Подкласс добавляет функциональность (расширяет) суперкласс.
Примером этого является создание суперкласса TwoDShape, который хранит ширину и высоту двумерного объекта.
Подкласс Triangle создан для расширения TwoDShape.
Ключевое слово расширяет используется для создания подкласса.
TwoDShape определяет атрибуты общей двумерной фигуры, например квадрата, прямоугольника, треугольника и т. д.
Класс Triangle является подклассом TwoDShape и создает особый тип: треугольник.
Triangle наследует все от TwoDShape и добавляет поле стиля, метод area() и метод showStyle().
style хранит стиль треугольника, который может иметь любое описание, например «полный», «контур» или «равнобедренный».
Метод area() вычисляет и возвращает площадь треугольника.
Метод showStyle() отображает стиль треугольника.
Triangle может получить доступ к элементам ширины и высоты TwoDShape как в области(), так и непосредственно в объектах t1 и t2.
TwoDShape, несмотря на то, что он является суперклассом Triangle, является независимым классом и может использоваться отдельно.
Форма TwoDShape = новая TwoDShape();
shape.width = 10;
shape.height = 20;
shape.showDim();
класс имя-подкласса расширяет имя-суперкласса {
// тело класса
}
В Java вы можете указать только один суперкласс для любого создаваемого вами подкласса.
Java не поддерживает множественное наследование (наследование от нескольких суперклассов в одном подклассе), в отличие от C .
Можно создать иерархию наследования, в которой подкласс становится суперклассом другого подкласса.
Ни один класс не может быть суперклассом сам по себе.
Преимущество наследования состоит в том, что суперкласс может определять атрибуты, общие для нескольких объектов, что позволяет создавать множество конкретных подклассов.
Каждый подкласс может определить свою собственную классификацию на основе суперкласса.
Примером этого является создание подкласса TwoDShape для инкапсуляции прямоугольников.
Класс Rectangle является подклассом TwoDShape.
Добавляет метод isSquare(), который определяет, является ли прямоугольник квадратом (когда ширина равна высоте).
Также добавляет метод area(), который вычисляет площадь прямоугольника.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3