Florianfran Geschrieben 8. Juni 2011 Geschrieben 8. Juni 2011 Hallo Java-Freunde, ich bin gestern mit ein paar dummen fragen in meiner mündlichen Prüfung konfrontiert worde und finde irgendwie keine Antworten darauf. Vector<Verteilung> vec = new Vector(); Zu dieser Syntax sollte ich jedes Wort erklären und den Fachbegriff nennen. Vector = Object-, Klassenname <Verteilung> = Variablentyp welche in den Vector geschrieben werden dürfen vec = Variablenname Vector() = Konstruktor Das waren meine Antworten. Dies waren aber für meine Prüfer alles keine Fachbegriffe?..Wie lauten denn diese denn?....ich hab keine Ahnung. Weiterhin weis ich leider auch nicht genau was der new Operator macht... Könnt ihr mir helfen? Ich bedanke mich schon mal im vorraus. Gruß Florian Zitieren
lilith2k3 Geschrieben 8. Juni 2011 Geschrieben 8. Juni 2011 Ich bin zwar kein Javerino aber ich versuch mich trotzdem mal an einer Antwort: vec ist der Name der Variable vom Typ Vector<Verteilung>. Vector<Verteilung> ist der Typ der Variablen vec. Vector<T> ist eine generische Klasse, wobei "Verteilung" in diesem Falle die Typ-Variable für den generischen Parameter T ist. new ist ein schlüsselwort, welches zur Objektinstanziierung benötigt wird. Vector() ist nicht der Konstruktor, sondern der Aufruf des Konstuktors. und durch die Zuweisung der rechten an die Linke Seite erhält die Variable vec die Referenz auf ein neues Objekt vom Typ Vector. Irrtümer vorbehalten Zitieren
Genodi Geschrieben 8. Juni 2011 Geschrieben 8. Juni 2011 Als "Javerino" sage ich: Da gibt es nichts hinzuzufügen :-) Zitieren
Ulfmann Geschrieben 8. Juni 2011 Geschrieben 8. Juni 2011 Vector<Verteilung>vec = new Vector(); Ergänzend zu meinem Vorredner noch der Hinweis auf Feinheiten: Vector ist ein Referenztyp. Das heißt das erstellte Objekt ist auf jeden Fall von diesem Typ. Verteilung in den spitzen Klammern gibt den Objekttyp an, der da rein darf. Und nur der darf da rein (und alles, was von Verteilung erbt. vec ist der Name der Variable. Sie referenziert zu einer Speicheradresse, aber für den Menschen ist sowas leichter zu lesen. Vector() ist der Defaultkonstruktor, beziehungsweise der Parameterlose. Gleichzeitig steht hier, welcher Objekttyp gebaut wird. Das wird interessant, wenn es um Polymorphismus geht - da müssen Objekt- und Referenztyp nicht zwingend gleich sein. So long... Zitieren
Florianfran Geschrieben 8. Juni 2011 Autor Geschrieben 8. Juni 2011 Ja sorry meinte natuürlich den auf dens Konstruktors. Die restliche Erklärung hatte ich auch ungefähr so vorgetragen. Nur das es ihnen nicht gerreicht hat irgendwie. Es hat mir etwas weiter geholfen im Bezug auf die Wörter "generische Klasse" und "Referanztyp", leider nur nicht im verständnis was die prüfer hätten haben wollen. Vielen danke für eure fixen Antworten. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.