- import abc
- from zope.interface import Interface, classImplements
- class AFoo(metaclass=abc.ABCMeta):
- pass
- class IFoo(Interface):
- pass
- classImplements(AFoo, IFoo)
- class Foo(AFoo):
- pass
- class Bar:
- pass
- AFoo.register(Bar)
- print('Foo extends AFoo', issubclass(Foo, AFoo))
- print('Foo implements IFoo', IFoo.implementedBy(Foo))
- print('Bar extends AFoo', issubclass(Bar, AFoo))
- print('Bar implements IFoo', IFoo.implementedBy(Bar))