1). Синтаксично віртуальні і динамічні методи ідентифікуються процедурною директивою virtual, що включається в заголовок методу. Для реалізації динамічного методу після службового слова
virtual указується номер методу - ціле позитивне число (virtual<номер>). Номер динамічного методу повинен бути унікальним для даного методу. Директива virtual не дублюється в заголовку опису тіла методу.
2). Визначення динамічного методу в описі об'єктного типу означає, що у всіх типах, що успадковують даний, цей метод може бути визначений і оголошений динамічним.
3). Якщо в деякому класі метод оголошений динамічним, то при спадкуванні цього класу цей метод також успадковується.
4). Якщо у наслідуваному класі динамічний метод подавляється, то
його перевизначення повинне бути оголошено динамічним.
5). Заголовок опису будь-якого динамічного методу при його перевизначенні в дочірньому класі повинен у точності відповідати заголовку цього методу у визначенні батьківського класу, разом з ім'ям і
списком формальних параметрів. Це означає, що всі динамічні методи в даному ланцюжку спадкування повинні мати один заголовок, визначений один раз - у відповідному батьківському класі. Цей заголовок просто копіюється для дублювання у всіх класах-нащадках. Помітимо, що при перевизначеннях статичних методів не існує ніяких обмежень на заголовки однойменних методів.
Попередження: Якщо в програмі здійсниться пошук динамічного методу для об'єкта, що помилково не ініційований, компіляція пройде успішно, але процес виконання заблокує систему.