Jak działać w Javie przy braku wielodziedziczenia?

0

np. Wszystkie moje klasy dziedziczą z klas JPanel, lub JFrame, jednocześnie mam bardzo wiele wspólnego kodu, który się powtarza... np. metodę zwrocObrazek() z taką samą zawartością w każdej klasie, wiem że mogę użyć Interfejsu, baa można nawet użyć coś takiego jak "default" żeby mieć zawartość metody, ale jak wy byście to ogarnęli?

Tworzyć interfejsy z wymaganymi podstawowymi metodami dla tych klas, czy po prostu kopiować kod, co jest bardziej czytelne?
Wiem, że pytanie może wydawać się głupie, ale zacząłem pierwszy większy projekt, nie mam doświadczenia, a chcę żeby wszystko było uporządkowane.

Czy rozwiązaniem tutaj jest tworzenie dodatkowej klasy która dziedziczy z JFrame i dodatkowo ma metody które chcę dodać do swoich klas i dziedziczyć z niej?

1

Jedno hasło w Google:

Prefer composition over inheritance.

0

czesto dziedziczenie jest nadużywane. jest b.wiele systemow w javie i jakos daja rade :)
poczytaj o kompozycji

0

Jak już ktoś napisał w 80% przypadków dziedziczenia można uniknąć poprzez stosowanie kompozycji. W takim C++ na przykład wielodziedziczenie było potrzebne ze względu na brak interfejsów (metody wirtualne). W sumie wielodziedziczenie w Javie występuje, ale działa tylko dla interfejsów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1