В Java существует несколько важных модификаторов, которые играют ключевую роль в объектно-ориентированном программировании. Сегодня мы подробно рассмотрим модификаторы abstract, protected и final…завершения цикла статей о наследовании…, их назначение и особенности применения. Итак, abstract – это нечто абстрактное, неясно выраженное, может быть, как класс, так и метод. Разберем сначала для метода. Так, если метод объявлен как abstract, то и класс должен быть объявлен соответственно также. Абстрактный метод не содержит тела и его должен (обязан) реализовать подкласс. Если подкласс не реализует все методы суперкласса, то должен сам быть объявлен как abstract. Когда же используется абстрактный метод? Когда в суперклассе его нельзя реализовать, но он нужен для переопределения (реализации) в его подклассах. К примеру, есть суперкласс Rastenija и его подклассы Borovik, Kartofel и Ogurez. Каждый из подклассов размножается разными способами, поэтому метод в суперклассе razmnogenie() не определ