Абстрактный метод
Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 27 августа 2015 года; проверки требуют 16 правок.
![]() | В статье не хватает ссылок на источники (см. рекомендации по поиску). |
Абстра́ктный ме́тод (или чистый виртуальный метод (pure virtual method — часто неверно переводится как чИсто виртуальный метод)) — в объектно-ориентированном программировании, метод класса, реализация для которого отсутствует. Класс, содержащий абстрактные методы, также принято называть абстрактным (там же и пример). Абстрактные методы зачастую путают с виртуальными. Абстрактный метод подлежит определению в классах-наследниках, поэтому его можно отнести к виртуальным, но не каждый виртуальный метод является абстрактным.
Назначение[править | править код]
Абстрактный метод ничего не делает, но определяет параметры и возвращаемое значение.
Назначение абстрактных методов[1]:
- описание абстракции, которая в более конкретизированном виде не может быть реализована;
- формальное (без реализации — есть или нет) удовлетворение требований о наличии статических методов при обращении к ним для прохождения проверки компилятора статической типизации, когда реализация их будет определена динамически (в процессе работы программы).
Примеры[править | править код]
С#[править | править код]
abstract type method_name(params);//определение в родительском классе
override method_name(params){...};//определение в дочернем классе
C++[править | править код]
virtual void Abstr () = 0; // Чистая (пустая) виртуальная функция.
Delphi[править | править код]
procedure AbstractProcedure; virtual; abstract;
Java[править | править код]
abstract void methodName();
PHP[править | править код]
abstract class AbstractClass
{
abstract protected function methodName();
}
См. также[править | править код]
Примечания[править | править код]
- ↑ Бадд Т. 14.6. Отложенные методы //Глава 14. Полиморфизм // Объектно-ориентированное программирование.
Литература[править | править код]
- Антон Злыгостев. Обработка абстрактных методов в Delphi // RSDN Magazine. — 2003. — № 2.
int main()
{
printf("Hi");
return 0;
}
| Это статья-заготовка о программировании. Помогите Википедии, дополнив эту статью, как и любую другую. |
Для улучшения этой статьи желательно:
|