Keine feste Länge bei Objekten, warum nur Zeiger?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hi,

primitive Datentypen haben ja eine feste Länge. Warum nutzt man aber Zeiger anstatt beim anlegen einer Variablen die Größe dynamisch festzulegen. Wenn sich wieder an der Variablen was ändert könnte die Größe ja wiederum dynamisch geändert werden. Warum nutzt man also nicht eine Variable deren Größe sich dynamisch ändert sondern 2 Variablen von denen eine auf eine sich ändernde Variable zeigt???
 
G

Gast

Gast
Tut mir leid, aber ich verstehe Dein Problem nicht. Gib doch mal ein Beispiel, wo sich Java nicht so verhält wie Du das erwartest...
 

WieselAc

Top Contributor
Willst du daraf hinaus das soetwas nicht klappt?

Code:
public void testCaller(){
    int i = 10;
    testCalled(i);
    System.out.println
}

public void testCalled(int i){
    i = 6;
}
 
G

Gast

Gast
Nein. Ich frage mich nur, warum es Referenzdatentypen gibt. Diese verweisen ja auf ein Objekt. Da Objekte, im Gegensatz zu primitiven Datentypen, keine feste Größe haben. Ich frage mich warum dieses "keine feste Größe" nicht einfach nur durch eine Variable repräsentiert wird. D.h. warum benötige ich einen Zeiger auf ein Objekt und nehme nicht gleich eine Variable deren Bitmuster das Objekt repräsentiert. Die Änderung dieser Variable könnte doch dynamisch verwaltet werden, ohne das ich dafür eine Referenzvariable brauche...
 

FelixB

Bekanntes Mitglied
gib doch bitte mal ein konkretes Beispiel, das ist igendwie sehr verwirrend...

ich versuch mich mal an ein paar Erklärungen mit der Hoffnung, dich nicht völlig falsch verstanden zu haben ;)

der Vorteil an Referenzen ist, dass es mehrere Refs auf ein Objekt geben kann. Weiterhin können Referenzen mit einer festen Größe speichertechnisch "besser" verwaltet werden, als Objekte dynamischer Größe.
 

Marco13

Top Contributor
Wenn ich die Frage jetzt mal so verstehe, wie FelixB: Stell' dir vor, du hast ein Objekt, das 12 Gigabyte groß ist, und willst das an eine Funktion übergeben, die das Objekt verändern soll. Niemand würde die 12 GB irgendwo hin kopieren, die Daten ändern, und die Kopie wieder zurück-kopieren. Stattdessen würde man diese Funktion nur die Information übergeben, WO die Daten dieses 12 GB großen Objektes im Speicher stehen, damit die Funktion direkt dort hinschreiben kann. Und schon ist man bei einer Referenz... :D (sinngemäß)
 
G

Gast

Gast
Aha, ich glaube ich habe es verstanden. Also es wäre zwar prinzipiell möglich ohne Referenzvariablen auszukommen. Also mit dem reinen Objekt zu arbeiten. Aus Performancegründen wird aber darauf verzichtet. Da primitive Datentypen sehr klein sind, wird keine Referenz benötigt.

Bezog sich darauf auch die Erklärung ???->

der Vorteil an Referenzen ist, dass es mehrere Refs auf ein Objekt geben kann. Weiterhin können Referenzen mit einer festen Größe speichertechnisch "besser" verwaltet werden, als Objekte dynamischer Größe.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
krgewb Keine richtige Doku Java Basics - Anfänger-Themen 5
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
G Endlosschleife keine Rückgabe Java Basics - Anfänger-Themen 36
Nooobi Regex und .matches() geben keine Ausnahme Java Basics - Anfänger-Themen 10
berserkerdq2 Warum ist das keine Referenzkopie mehr? Java Basics - Anfänger-Themen 26
O Java 17 keine Pflicht um Exceptiones zu behandeln? Java Basics - Anfänger-Themen 2
nbergmann Installation unter jdk.java.net: Keine ZIP-Datei zum entpacken Java Basics - Anfänger-Themen 2
M Eclipse kennt keine String Klasse mehr Java Basics - Anfänger-Themen 1
K Erste Schritte "Taschenrechner" zeigt keine Komma Zahlen an. Java Basics - Anfänger-Themen 8
M Keine Ausführung von System.out.println() Java Basics - Anfänger-Themen 3
H Warum kann man keine Parameter in die main-Methode packen? Java Basics - Anfänger-Themen 4
B Nach eingefügtem Code erkennt Compiler keine Instanzvar und meldet SyntaxError Java Basics - Anfänger-Themen 2
A keine Ergebnisse - String nummer in array nummer converting Java Basics - Anfänger-Themen 1
JavaClap "Bruchrechner" liefert Fehler/keine Ausgabe bei Addition und Subtraktion Java Basics - Anfänger-Themen 0
M Regex nur Zahlen und Punkt zulassen, Keine Eingabe(Leeres TextFeld) nicht zulassen Java Basics - Anfänger-Themen 6
B Ich kann keine Hühner töten Java Basics - Anfänger-Themen 49
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
I Regex findet keine Treffer Java Basics - Anfänger-Themen 4
B Keine Ausgabe .. Woran liegt das? Ich komme nicht weiter Java Basics - Anfänger-Themen 14
T Bei mir wird keine javac angezeigt sondern nur javacpl Java Basics - Anfänger-Themen 2
R Keine Verbindung mit MariaDB Java Basics - Anfänger-Themen 18
O Input/Output newbile und keine Ahnung! Java Basics - Anfänger-Themen 16
S Kann keine Bilder laden? Java Basics - Anfänger-Themen 9
C Problem: PC ohne Internet und keine Möglichkeit Programme zu laden Java Basics - Anfänger-Themen 5
Bun17 Keine Ausgabe in der Konsole Java Basics - Anfänger-Themen 2
R Keine Verbindung zu MySql über Netbeans Java Basics - Anfänger-Themen 15
D jsoup.select findet keine elemente Java Basics - Anfänger-Themen 2
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
W Was bedeutet im Struktogramm „zufall“ aufrufen (keine Parameterübergabe)? Java Basics - Anfänger-Themen 8
T Keine Ahnung vom Programieren Java Basics - Anfänger-Themen 28
A SelectionSort bringt keine konstanten Ergebnisse Java Basics - Anfänger-Themen 4
J RPN Taschenrechner - keine Lösung!! Java Basics - Anfänger-Themen 84
I equals (Override) mit eigener Exception (keine Runtime-Exception) Java Basics - Anfänger-Themen 9
C Keine javac.exe in bin-Datei Java Basics - Anfänger-Themen 3
A Vollkommene Zahlen: Findet keine Einzige Java Basics - Anfänger-Themen 9
J Input/Output javac HelloWorld.java - Keine Textausgabe in der Konsole Java Basics - Anfänger-Themen 4
H JDK installieren keine Installationsroutine bei Javainstallation sichtbar Java Basics - Anfänger-Themen 4
H Buttons zeigen keine Reaktion Java Basics - Anfänger-Themen 6
I Programm von mir - keine Ahnung mehr ob richtig falsch:-( Java Basics - Anfänger-Themen 6
D Datentypen Datentyperstellung | Kompiler sagt Syntax Error doch ich find keine Lösung Java Basics - Anfänger-Themen 2
snipesss IDE zeigt keine Fehler an, Programm wird jedoch nicht ausgeführt. Java Basics - Anfänger-Themen 18
Khorgoroth Erste Schritte Keine Ausgabe Java Basics - Anfänger-Themen 2
P Listen sortieren mit Binärbaum gibt keine Ausgabe ab 10000 Integern Java Basics - Anfänger-Themen 14
Z AWT package -> keine Konsole? Java Basics - Anfänger-Themen 2
Henri keine Ausgabe Java Basics - Anfänger-Themen 5
J TableView zeigt keine Daten an Java Basics - Anfänger-Themen 14
C Java stellt unter Windows keine Umlaute dar Java Basics - Anfänger-Themen 9
A Keine Konsolenausgabe Java Basics - Anfänger-Themen 5
D Methoden Filewriter macht keine Zeilenumbrüche Java Basics - Anfänger-Themen 3
D Compiler-Fehler NullPointerExeption aber Ecplise zeigt keine Fehler an?! Java Basics - Anfänger-Themen 8
D addActionListener zeigt keine Wirkung Java Basics - Anfänger-Themen 8
S Warum erlaubt ein while-Loop keine Variablen-Declaration wie der for-Loop..? Java Basics - Anfänger-Themen 6
M Lottozahlen 6 aus 49 keine doppelten Java Basics - Anfänger-Themen 5
D Keine Ausgabe in meinem Helden Programm Java Basics - Anfänger-Themen 2
M Keine Ausgabe Java Basics - Anfänger-Themen 4
C PrintWriter schreibt keine in Strings enthaltenen Zeilenumbrüche Java Basics - Anfänger-Themen 9
D Keine Funktion bei "else" Java Basics - Anfänger-Themen 5
J Rückgabe als Wert, keine Referenz Java Basics - Anfänger-Themen 3
K Keine doppelten Zufallszahlen im Array Java Basics - Anfänger-Themen 17
X Einfach verkettete Liste, keine Fehlermeldung Programm friert ein Java Basics - Anfänger-Themen 4
1 Mini Programm, keine Eingabe möglich.. Java Basics - Anfänger-Themen 6
P Wiedereinstieg und kann keine Dateien mehr öffnen... Java Basics - Anfänger-Themen 13
R Keine doppelten Zufallszahlen Java Basics - Anfänger-Themen 2
T Buffererwriter keine Exception obwohl Client weg Java Basics - Anfänger-Themen 2
D Java Eclipse hat scheinbar keine library Java Basics - Anfänger-Themen 2
M Keine Datenbank verbindung Java Basics - Anfänger-Themen 14
E Keine Ausgabe der Konsole Java Basics - Anfänger-Themen 4
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
tuttle64 Keine Umlaute im Dos Fenster Java Basics - Anfänger-Themen 12
D Erstellte Jar datei zeigt keine Bilder an Java Basics - Anfänger-Themen 5
L Klassen Ich kann keine .jar Dateien mehr öffnen Java Basics - Anfänger-Themen 4
J Haben Chars wirklich keine KeyCodes? Java Basics - Anfänger-Themen 12
L Applet : keine Recht für Zugriff auf Clipboard (trotz Zertifikat) Java Basics - Anfänger-Themen 4
A contains bzw. indexOf liefert keine Treffer? Java Basics - Anfänger-Themen 3
M Java Webstart keine Zugriffe Java Basics - Anfänger-Themen 7
W Eclipse erstellt keine Klassen Java Basics - Anfänger-Themen 6
B Aus einem Eclipse Projekt eine .jar - keine Bilder drin Java Basics - Anfänger-Themen 7
K org.h2.jdbc.JdbcSQLException: Keine Daten verfügbar Java Basics - Anfänger-Themen 9
J Mehrere Zufallszahlen erzeugen, aber keine darf doppelt erzeugt werden - Wie? Java Basics - Anfänger-Themen 5
E String soll mit Großbuchstaben anfangen und keine Sonderzeichen enthalten Java Basics - Anfänger-Themen 4
P Zugriff auf Attribute einer Klasse, zu der keine Verbindung besteht Java Basics - Anfänger-Themen 11
J InputStreamReader + BufferedReader - keine Eingabemöglichkeit Java Basics - Anfänger-Themen 10
T JTable keine spaltenbeschriftung Java Basics - Anfänger-Themen 2
G Input/Output FilenameFilter aber bitte keine Unterordner Java Basics - Anfänger-Themen 5
M nach jar export keine db abfrage möglich Java Basics - Anfänger-Themen 2
G JDK installieren keine eclipse.exe gefunden Java Basics - Anfänger-Themen 16
S Erste Schritte Wo steht eigentlich das ein jar keine andere jars enthalten darf? Java Basics - Anfänger-Themen 19
O Erste Schritte Klassenname zurückgeben, keine instanz Java Basics - Anfänger-Themen 23
K keine Reaktion im TableModel nach ändern der liste? Java Basics - Anfänger-Themen 2
T keine buchstaben!nur zahlen eingabe möglich Java Basics - Anfänger-Themen 48
M keine geschwungenen Klammern Java Basics - Anfänger-Themen 9
E Input/Output Socket bekommt keine Verbindung bei funktionierendem Fremdziel Java Basics - Anfänger-Themen 2
V JavaApplet versendet keine mail Java Basics - Anfänger-Themen 8
B Interface Nach "package"-Nennung keine Toolbar-Icons mehr Java Basics - Anfänger-Themen 5
B Geerbte Instanz kann keine void Methode ausführen?! Java Basics - Anfänger-Themen 15
S Java Web Start lädt keine Bilder Java Basics - Anfänger-Themen 2
P Keine Rechenoperationen bei Doublewert? Java Basics - Anfänger-Themen 4
B Variablen keine Arrayübergabe für getter im Interface Java Basics - Anfänger-Themen 8
I Habe keine Idee was ich als Anfänger programmieren kann. Java Basics - Anfänger-Themen 4
R Kalender speichert keine Zeit Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben