Пятница, 13.06.2025, 15:47
Приветствую Вас Гость | RSS
Меню сайта
Вход на сайт
Поиск
Календарь
«  Февраль 2015  »
Пн Вт Ср Чт Пт Сб Вс
      1
2345678
9101112131415
16171819202122
232425262728
Статистика

Главная » 2015 » Февраль » 24 » Абстрактные классы и абстрактные методы в Java
17:56
Абстрактные классы и абстрактные методы в Java

Абстрактный класс – это класс, для которого нельзя создать экземпляр. Можно создать объект Волк, Тигр, Лиса, но что представляет собой объект Животное? Чтобы предотвратить создание экземпляра класса, необходимо отметить класс словом abstract.

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

У абстрактного метода нет тела!!!

Если объявляется абстрактный метод, то абстрактным должен быть и класс, которому он принадлежит. Нельзя иметь абстрактный метод в неабстрактном классе. В абстрактном классе могут быть абстрактные и неабстрактные методы. Вы обязаны реализовать все абстрактные методы.

Реализация абстрактного метода происходит так же, как обычное переопределение. Абстрактные методы не имеют тела и нужны только для полиморфизма. Это означает, что первый конкретный класс в дереве наследования должен реализовать все абстрактные методы. Другой абстрактный класс в дереве наследования способен переложить эту обязанность на другой конкретный класс. Но первый конкретный класс должен реализовать абстрактные методы обоих абстрактных классов.

Реализовать абстрактный метод означает дать ему тело, то есть необходимо создать неабстрактный метод в классе с такой же сигнатурой метода (именем и аргументами) и возвращаемым типом.

Категория: Java | Просмотров: 483 | Добавил: alex | Рейтинг: 0.0/0
Всего комментариев: 0