Программирование на Java: Руководство для опытных разработчиков - страница 10

Шрифт
Интервал



System.out.println("Собака лает");


}


}


public class Cat extends Animal {


public void sound() {


System.out.println("Кошка мяукает");


}


}


public class Main {


public static void main(String[] args) {


Animal animal = new Dog();


animal.sound(); // Выводит "Собака лает"


animal = new Cat();


animal.sound(); // Выводит "Кошка мяукает"


}


}


```


В этом примере мы создаем объекты классов `Dog` и `Cat`, которые наследуют от класса `Animal`. Мы затем присваиваем эти переменной `animal` типа `Animal` вызываем метод `sound()`. зависимости объекта, который присвоен `animal`, будет вызван соответствующий


Преимущества наследования и полиморфизма


Наследование и полиморфизм предоставляют несколько преимуществ, включая:


Уменьшение дублирования кода: Наследование позволяет избежать кода, создавая новые классы на основе существующих.


Повышение гибкости: Полиморфизм позволяет объектам принимать разные формы в зависимости от контекста, что делает код более гибким и адаптируемым.


Упрощение поддержки: Наследование и полиморфизм упрощают поддержку кода, позволяя изменять поведение объектов без изменения их внутренней структуры.


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