Różnica pomiędzy Trait w Groovy a klasą abstrakcyjną w Java

Różnica pomiędzy Trait w Groovy a klasą abstrakcyjną w Java
Władyslaw Parchomenko
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 63
0

Dzień dobry.

Uczę się Groovy i zauważyłem że struktura Trait jest bardzo podobna do interfaców, jedyna różnica polega na tym, że w Trait'ach można tworzyć zmienne(pola) nie statyczne.

I to tak na prawdę wygląda na klasę abstrakcyjną w Javie. Być może wiecie jaka jest różnica pomiędzy nimi?

99xmarcin
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2420
0

Trait to bardziej mixing niż klasa abstrakcyjna, a główna różnica jest taka że można mieć wiele mixinów w tej samej klasie ale tylko jedną klasę bazową.

https://en.wikipedia.org/wiki/Mixin

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.