Einzelnen Beitrag anzeigen
Alt 23.08.2003, 05:15   #10
Who-T
Elite
 
Registriert seit: 01.08.2000
Beiträge: 1.395


Who-T eine Nachricht über ICQ schicken
Standard

Anderes beispiel:

du hast eine ArrayList, die du durchlaufen willst.

Code:
ArrayList al = new ArrayList();
// fill arraylist with data
Iterator it = al.iterator();
was du jetzt hast ist ein iterator. und wenn du dir die api-doc ansiehst kommst du drauf dass Iterator ein interface ist.

was heißt das jetzt für dich?

du weißt dass du eine instanz einer bestimmten klasse bekommen hast (weil instanzen von interfaces gibt es nicht).
allerdings weißt du nicht was für eine klasse - aber, und das ist das entscheidende für dich - es kann dir wurscht sein weil du weißt, dass diese klasse alle methoden des interfaces Iterator implementiert hat. wie - das kann dir auch wieder wurscht sein.

wenn du iterator() an einer anderen collection aufrufst, kriegst du eine instanz einer womöglich ganz anderen klasse zurück. aber du kannst mit den in Iterator definierten methoden wieder durch deine collection laufen.

genau darum gehts - ein anderer programmiert was für dich, wie er das macht interessiert dich nicht, hauptsache er gibt dir eine standardisierte schnittstelle über die du zugreifen kannst.
____________________________________
Whoever built humanity left in a major design flaw: it was the tendency to bend at the knees.
Who-T ist offline   Mit Zitat antworten