Interested Article - Абстрактный метод

Абстра́ктный ме́тод (или чистый виртуальный метод ( pure virtual method — часто неверно переводится как чИсто виртуальный метод )) — в объектно-ориентированном программировании , метод класса , реализация для которого отсутствует. Класс, содержащий абстрактные методы, также принято называть абстрактным (там же и пример). Абстрактные методы зачастую путают с виртуальными . Абстрактный метод подлежит определению в классах-наследниках, поэтому его можно отнести к виртуальным, но не каждый виртуальный метод является абстрактным.

Назначение

Абстрактный метод ничего не делает, но определяет параметры и возвращаемое значение.

Назначение абстрактных методов :

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

Примеры

С#

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();
}

См. также

Примечания

  1. Бадд Т. 14.6. Отложенные методы //Глава 14. Полиморфизм // . 5 октября 2011 года.

Литература

  • Антон Злыгостев. // RSDN Magazine. — 2003. — № 2 .
Источник —

Same as Абстрактный метод