# Instanzvariable



## LeaveX (11. Feb 2010)

Hallo,

Ich muss eine Aufgabe lösen.

*Eine Klasse besitzt eine Instanzvariable „list“ mit dieser Definition:

java.util.ArrayList list = new java.util.ArrayList();

Wie nennt man den Vorgang, der zu folgender Definition führt?

java.util.List list = new java.util.ArrayList();*

Ich weiss nicht wie ich die Frage verstehen soll. Meiner Meinung ist es ein Objekt erzeugen oder?

MFG
LeaveX


----------



## SlaterB (11. Feb 2010)

es geht hier darum, dass List statt ArrayList als Typ der Variable list geschrieben wird,
List ist die Oberklasse von ArrayList (edit: naja ein Interface),
Vererbung, Generalisierung, Spezialisierung usw., das sind die Themen,

welcher Fachbegriff genau gefragt ist kann niemand sagen der nicht deinen Leher/ Lehrbuch kennt,
für mich klingt die Frage so als wäre der Vorgang gemeint, in einer fertigen Objekt-Deklaration den Typ ArrayList gegen einer seiner Oberklassen auszutauschen,
dass es dafür einen Begriff gibt war mir bisher kaum bewußt, aber wenn der in deinem Buch irgendwo steht, ist danach vielleicht gefragt,

suche alles ab hinsichtlich 'Definition: ', 'folgendes nennen wir ..' usw.


----------



## LeaveX (11. Feb 2010)

Ah danke. Hab noch was vergessen.

*Mit welcher Refaktorisierungsfunktion kann die gezeigte Änderung vorgenommen werden?*

MFg
LeaveX


----------



## SlaterB (11. Feb 2010)

Refaktorisierung ist ein gutes Stichwort, 
in der Entwicklungsumgebung Eclipse könnte man die Variable list markieren 
und dann die Refactor-Funktion 'Generalize Declare Type' verwenden, um die zweite Deklaration zu erhalten,


----------



## Landei (11. Feb 2010)

Also _könnte_ "Generalisierung" die richtige Antwort sein...


----------



## LeaveX (11. Feb 2010)

Hehe habs danke leute.

Die Antowrt ist: Generalisierung von Referenzen


----------

