> -- Madzi писал(а):
> Вся идея интерфейсов в том, что это контракт объекта с системой на обязательную реализацию определённых методов, и система проверяет этот контракт на этапе компиляции.Вот пожалуйста:
## Код:
```
TYPE
  ObserDrawSeri = POINTER TO ABSTRACT RECORD
    PROCEDURE (x: ObserDrawSeri) as_Observable(): Observable, NEW, ABSTRACT;
    PROCEDURE (x: ObserDrawSeri) as_Drawable(): Drawable, NEW, ABSTRACT;
    PROCEDURE (x: ObserDrawSeri) as_Serializable(): Serializable, NEW, ABSTRACT;
  END;

  MyData = POINTER TO RECORD (ObserDrawSeri)
    ...
  END
```
