Java'nın çoklu kalıtım sorunlarının nasıl çözüleceğini tam olarak anlamaya çalışmak için açıklığa kavuşturmam gereken klasik bir sorum var.
Ben sınıf var Diyelim Animal
Bu alt sınıflar vardır Bird
ve Horse
ben bir sınıf yapmak gerekir Pegasus
uzanan Bird
ve Horse
yana Pegasus
bir kuş ve bir at hem de.
Bence bu klasik elmas problemi. Bunu çözmek için klasik bir yol anlayabiliyorum kadarıyla yapmaktır Animal
, Bird
ve Horse
sınıflar arayüzleri ve uygulamak Pegasus
onlardan.
Kuşlar ve atlar için hala nesne oluşturabildiğim sorunu çözmenin başka bir yolu olup olmadığını merak ediyordum. Hayvan yaratmanın bir yolu olsaydı, bu harika olurdu ama gerekli de değildi.
public class Pegasus extends Horse implements Flying
.