prohol napisał(a)
No ja tez mam problem z zastosowaniem interface..przeciez i tak musze w kazdej klasie zaimplementowac metody zawarte w interface wiec tak na prawde po kiego to? zeby tylko pokazac jakie parametry przyjmuje i co zwraca metoda? ..przeciez jak mam klasy jakies np class1, class2 itd i w nich metody ruch to w kazdej klasie inaczej implementuje metode ruch i wywoluje na rzecz daneg obiektu class1.ruch class2.ruch.....wiec po co tu jakis interface? kiedy w ogóle to jest przydatne? bo te opisy przedmowcow sa jak belkot z jakies "madrej" ksiazki..moze jakis krotki przyklad,opis?
Dzieki za podsumowanie... pisalem z glowy :/
Podalem przyklad, no ale jeszcze raz:
Jest program, w ktorym na ekranie pokazuja sie figury. I te figury sie jakos tam ruszaja, na kilka roznych sposobow. Pytanie jak nimi sterowac? Otoz mozna stworzyc klase Dyrektor, ktora co np. 30ms wywoluje wyliczenie nowych wspolrzednych. ALE nie ma sensu tworzyc tablic obiektow na kazdy rodzaj osobno. Czyli mamy klasy: Podskakiwacz, Przelatywacz, Sprezynka, i tym podobne. I robimy sobie interfejs np. Ruch, ktory ma metode wylicz_nowe_wspolrzedne, i ktory implementuja wszystkie te poruszajace sie klasy. Tworzymy wiec JEDNA tablice typu Ruch i do niej wrzucamy wszystkie obiekty, nastepnie w petli wywolujemy metode. Mozna tak, dzieki temu, ze metoda jest zadeklarowana w interfejsie, a dzieki polimorfizmowi wywolaja sie odpowiednie metody konkretnego obiektu. Duzo latwiej?
pozdrawiam
johny