Моя дочь сейчас подросток. Когда она была моложе, она любила, чтобы ей читали. Одна книга, в частности, постоянно крутилась у нас дома. Ты моя мать? о птенце, который вылупляется, когда птица-мать ищет еду. На протяжении всей книги маленькая птичка спрашивает все (включая машины) ты, моя мама? До конца, где у нас есть счастливое решение для поиска. Объекты программы тоже имеют отношения. Наследование Java — важный аспект, который нам нужно понять.

Наследование Java

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

Файл Ball.java является надклассом, а файлы Football.java и Golfball.java — подклассами. В наследовании есть нечто большее, поэтому давайте расширим предыдущий пример.

В этом примере мы добавляем поля в родительский класс Ball.java. Существует конструктор для установки всех этих полей, а также метод roll().

В Football.java у нас есть доступ ко всем полям и методам суперкласса. Мы также добавляем новый уровень поля и конструктор, вызывающий суперкласс. Метод setLevel() позволяет нам передать строку для установки уровня. Наконец, мы переопределяем метод суперкласса roll(). Это может помочь нам определить функциональность, специфичную для производного класса.

Golfball.java — еще один подкласс. В этом классе мы добавляем еще одну поверхность поля. Уникальные функции для подкласса могут быть идентифицированы новыми полями или переопределяющими функциями, как мы делаем в другом подклассе. В конструкторе устанавливаем новое поле. Это зависит от разработчика. В зависимости от того, как он используется, это может быть что-то, что необходимо установить при создании объекта или позже.

Возможность повторного использования

Имея двоих детей, я многому научился делиться. Java также поощряет совместное использование. Два подкласса из нашего предыдущего примера Football и Golfball могут повторно использовать метод roll(). Хотя в Football мы переопределяем его. По мере построения иерархии мы можем совместно использовать и повторно использовать код. Помните, что все общедоступные и защищенные методы и поля наследуются подклассом.

Сингулярное наследование

В C++ допускается множественное наследование. Это может открыть огромную банку червей. К счастью для нас, Java упрощает задачу и допускает только единственное наследование. Мы можем создать несколько уровней наследования в Java. Когда A расширяет B, который расширяет C. Это тоже может быть трудно отслеживать, но не так грязно.

Ключевые слова

Наследование в Java в основном использует два ключевых слова. Удлиняет и супер. Давайте рассмотрим еще один пример.

Это просто продолжение нашего предыдущего урока Гольфбол. Обратите внимание на ключевое слово extends в объявлении класса. Это сообщает компилятору, что мы делаем мяч для гольфа подклассом суперкласса мяч.

Мы используем ключевое слово super в конструкторе и методе. В конструкторе использование ключевого слова super должно быть в первой строке конструктора. Если нет, то это будет ошибка компилятора. В целом наследование в Java довольно простое по сравнению с другими языками. Лучший способ чему-то научиться — это сделать это. Так что попробуйте и посмотрите, как вам это нравится.

Как вы использовали наследование Java?

Ознакомьтесь с большим количеством отличного контента и подпишитесь на MyITCareerCoach.com