Cześć
mam problem ze zrozumieniem sensu istnienia interfejsów w JAVIE. Wiem, że są to niejako klasy czysto abstrakcyjne, które posiadają jedynie deklarację metod i pól.
Klasy, które implementują dany interfejs są niejako zmuszone do utworzenia metod jakie są zadeklarowane w interfejsie.
Czytam teraz o wielowątkowości i jeśli chcemy ją zastosować w klasie, która już dziedziczy od innej, musimy uciec się do interfejsów (nie ma wielodziedziczenia).
Implementujemy w naszej klasie interfejs Runnable, tworzymy, nadpisujemy właściwie metodę run() i ... o dziwo, nasza klasa już wie, że nowy wątek rozpoczyna działanie właśnie w tej metodzie. Potrafi jeszcze wiele innych rzeczy. Pytanie tylko skąd ona to wie, skoro interfejs runnable zawierał tylko deklaracje metod? W zasadzie było to klika linijek kodu, bez implementacji żadnych metod i mechanizmów.