call by reference vs. call by value - pls help

Status
Nicht offen für weitere Antworten.

silversurfer2025

Neues Mitglied
Hallo Forum,
gibt es in Java wirklich als Übergabe an Methoden nur die call-by-value-Übergabe und NICHT call-by-reference? ???:L
Ich dachte immer, dass wenn ich ne arrayadresse übergebe, dass das dann call by reference ist (weil ich ja im grunde den zeiger übergebe, und keinen Wert...

Vielen lieben Dank schon einmal für eure Antworten, Mühe und Geduld,
Grüße
Tim

PS: bei uns in einer Klausur stand folgender Satz: "In Java werden Variablen immer mit dem call-by-value-Mechanismus an Methden übergeben. -- Ist dieser Satz folglich wahr oder unwahr?


Bsp:
Code:
    public methode(int[] a) {
        hier passiert etwas mit a, welches ja aber nach der Übergabe auch auf b zeigt
    }

    public static void main (String arv[]) {
        int [] b= {0,2,1,5,4}
        methode(b);         /*<-- IST DAS HIER NICHT CALL BY REFERENCE? und wenn nein, was ist dann genau call-by-                                       reference*/
    }
 
B

bygones

Gast
das ist eine diskussion die schon öfters ins leere führte.

Java kennt an und für sich nicht (wie z.B. C) call-by-reference.
Dennoch wird oft davon gesprochen, um jemanden den Begriff "Seiteneffekt" klar zu machen, d.h. das es unterschiedlich ist, ob man primitive Datentypen oder Objekte übergibt !!
 
G

Guest

Gast
Vielen Dank erst einmal für die schn elle Antwort,
also ist der Satz, wie er oben steht wirklich falsch (der aus der Klausur)? Was genau ist dann call-by-reference, wenn nicht die Übergabe von Zeigern? Seiteneffekte sind mir wohl bekannt, aber ich dachte immer das diese Effekte eben bei reference-Übergaben stattfinden...
Grüße
Tim
 
B

bygones

Gast
mal schaun, ob ich mich noch erinner (v.a. an C).

Code:
int test (char *query) {
 // do something
  query++;
}

Das kannst du in C machen. Hier übergibst du wirklich die Referenz, d.h. du kannst z.B. den Zeiger um eins im Speicher weiterschieben... das geht in Java nicht.

Diese Art von Referenzübergabe hat Java nicht - daher gibt es call-by-reference in Java nicht. Soweit ich verstanden habe (und das nun kann falsch sein) übergibt man bei Java den Zeiger auf ein Objekt, in C aber z.B. ist es direkt die Speicheradresse
???:L :?:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Java call by Value oder Reference Java Basics - Anfänger-Themen 35
R Call-by-Value, Call-by-Reference, Call-by-Name Ausgabe Java Basics - Anfänger-Themen 1
X Verständnisproblem Call-By-Reference Java Basics - Anfänger-Themen 5
U Worin besteht der Unterschied zwischen call by reference und call by value? Java Basics - Anfänger-Themen 14
H call by reference & value Java Basics - Anfänger-Themen 14
B Call by Value/Reference Java Basics - Anfänger-Themen 4
Joew0815 Methoden Objekt als Methoden-Parameter - Kein call-by-reference? Java Basics - Anfänger-Themen 12
T Array prozedur, call by reference ? Java Basics - Anfänger-Themen 6
B Variablen Wie macht man eine call by reference mit primitiven Datentypen in Java? Java Basics - Anfänger-Themen 2
S call by reference? Java Basics - Anfänger-Themen 52
F Verständisproblem bzgl. nicht Vorhandensein von Call-by-reference Java Basics - Anfänger-Themen 2
B Call By reference (Null pointer exception) Java Basics - Anfänger-Themen 6
C Call by reference Java Basics - Anfänger-Themen 11
W call-by-reference-Effekt bei Objekten Java Basics - Anfänger-Themen 3
S "Call by Reference" Java Basics - Anfänger-Themen 12
M try-catch, call-by-reference, Streaming und Strings Java Basics - Anfänger-Themen 10
S call by reference Java Basics - Anfänger-Themen 7
F Wie kann ich call by reference umgehen? Java Basics - Anfänger-Themen 14
F Rekursive Aufrufe, Parameterübergabe, call by reference Java Basics - Anfänger-Themen 3
F Call-By-Reference umgehen Java Basics - Anfänger-Themen 4
B Call by Reference Java Basics - Anfänger-Themen 7
K Eigene Annotations, Pre-/Post-/Call-Method Java Basics - Anfänger-Themen 6
G Klassen Call by Value auch bei Objekten? Java Basics - Anfänger-Themen 2
R Call By Referene? Java Basics - Anfänger-Themen 10
N Methode erfüllt nicht den zweck (Call by value) Java Basics - Anfänger-Themen 17
0 Call by value Java Basics - Anfänger-Themen 3
J Call by ... Java Basics - Anfänger-Themen 16
F java call jython Java Basics - Anfänger-Themen 7
C Unchecked Call? Wie Warnung beseitigen? Java Basics - Anfänger-Themen 3
I call to super must be first statement in constructor Java Basics - Anfänger-Themen 3
M Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 10
T Boolean by Reference Java Basics - Anfänger-Themen 6
T Schleifenindex "by reference" / "by value" Java Basics - Anfänger-Themen 13
O Socket by reference übergeben Java Basics - Anfänger-Themen 0
A Cannot make a static reference to the non-static field Java Basics - Anfänger-Themen 6
O Illegal Group Reference Java Basics - Anfänger-Themen 4
L Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 6
K Variablen Cannot make a static reference to the non-static field time Java Basics - Anfänger-Themen 6
P Compiler-Fehler Cannot make a static reference to the non-static field process Java Basics - Anfänger-Themen 3
C Reference - wird gegen meinen Willen - auf null gesetzt Java Basics - Anfänger-Themen 2
F Mal wieder: Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 9
F Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 3
M Reference Java Basics - Anfänger-Themen 2
B Cannot make a static reference...?? Java Basics - Anfänger-Themen 5
B Mal wieder "cannot make a static reference..." Java Basics - Anfänger-Themen 2
N Reference to non-static method Java Basics - Anfänger-Themen 8
C Passing Reference by Value Java Basics - Anfänger-Themen 4
G Wieso ist eine String-Übergabe keine by-reference-Zuweisung? Java Basics - Anfänger-Themen 7
R Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 5
L [Gelöst] Cannot make a static reference ... Java Basics - Anfänger-Themen 12
N Connot make a static reference. deklarierungsfehler Java Basics - Anfänger-Themen 10
T object reference counts Java Basics - Anfänger-Themen 14
T Cannot make a static reference to the non-static field Java Basics - Anfänger-Themen 8
frau-u Altes Problem: non-static method cannot be reference Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben