Re: Anfangsbuchstaben in Großbuchstaben ändern [OT]
Christian Frommeyer wrote:
> Weil in Java alle Objekte auf der Halde liegen und via
> Referenzvariable (Eingeschränkter Pointer) angesprochen werden.
> Das Konstrukt Objektvariable gibt es in Java nicht.
Warum nicht? Was wäre so schlimm daran, ein
Objekt a;
zuzulassen, das nur auf dem Stack liegt? Stattdessen gibt man dem GC
nur noch mehr Arbeit. Ein optionales delete wäre auch nicht
schlecht.
>> Diese Analogiegründe sind IMHO Altlasten, die die Sprache nur
>> seltsam aussehen lassen ...
> Altlasten woher?
> Der Aufruf
>
> Klasse1* objekt1 = new Klasse1();
>
> erzeugt in C++ ein Objekt objekt1 vom Typ Klasse1 mit dem
> parameterlosen Konstruktor auf der Halde und liefert einen Zeiger
> auf objekt1 zurück. Genau das analoge tut in Java
>
> Klasse1 objekt1 = new Klasse1();
Ja. Ist von der Syntax her überflüssig und wirkt auf mich
umständlich. Hatten wir aber schonmal, das Thema.
Einerseits C++ nacheifern und sich auf lernträge Umsteiger
spezialisieren, und gleichzeitig für Anfänger gut sein wollen ...
>> In den hunderten Dateien. Naja, ich gruppiere meine Klassen
>> lieber, damit finde ich sie besser.
> Dafür gibt es in Java Packages.
Vielleicht bin ich konservativ, aber ich habe lieber meine
10 .h-Dateien, in denen jeweils zusammengehörende Klassen
drinstehen ...
Grüße,
Björn
--
BOFH excuse #324:
Your packets were eaten by the terminator
Reply to: