Elmas problemi, bir sınıf ortak bir atası paylaşan iki sınıftan miras aldığında ortaya çıkarak belirsizlik yaratır: her iki ara sınıf da bir metodu (veya bir alanı) geçersiz kılarsa, alt sınıf hangi sürümü alır?
Elmas
A (defines greet())
/ \
B C (each may override greet())
\ /
D ← inherits from B and C: which greet()?
Python'da (çoklu miraslaşmaya izin veren)
:
():
():
():
():
():
(B, C):
(D().greet())
(D.__mro__)
