Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » heaps und frames? » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen heaps und frames?
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
neuling96
unregistriert
heaps und frames? Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
Betrachten Sie die Klasse Speicherverwaltung.
public class Speicherverwaltung {
public static void swap(int x, int y) {
int c = x;
x = y;
y = c;
// *2*
}
public static void swapInArray(int[] numbers, int i, int j) {
int c = numbers[i];
numbers[i] = numbers[j];
numbers[j] = c;
// *5*
}
public static void swapArrays(int[] numbers1, int[] numbers2) {
int[] c = numbers1;
numbers1 = numbers2;
numbers2 = c;
// *8*
}
public static void main(String[] args) {
{
int x = 1;
// *0*
int y = 2;
// *1*
swap(x, y);
// *3*
System.out.print("x = " + x + ", y = " + y);
}
{
System.out.print("\n");
int[] values = { 4, 5, 6, 7, 8 };
// *4*
swapInArray(values, 2, 4);
for (int i = 0; i < values.length; i++) {
System.out.print(values[i]);
if (i != values.length - 1) {
System.out.print(", ");
}
}
// *6*
}
{
System.out.print("\n");
int[] numbers1 = { 1 };
int[] numbers2 = { 2 };
// *7*
System.out.println("numbers1 = " + numbers1 + ", numbers2 = "
+ numbers2);
swapArrays(numbers1, numbers2);
// *9*
System.out.println("numbers1 = " + numbers1 + ", numbers2 = "
+ numbers2);
}
}
}

Geben Sie f¨ur jede der mit *1*, *2*, ..., *9* gekennzeichneten Zeilen den Inhalt aller sichtbaren Frames,
sowie den Inhalt des Heaps an.


wenn man sich die 2 anschaut

dann müsste doch
c=0
x=0
y=0

da int x, int y mit 0 gewählt werden


allerdings verstehe ich auch nicht was mit sichtbaren Frames,
sowie den Inhalt des Heaps an gemeint ist?
18.12.2014 23:24
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Kurz: im Frame sind die lokalen Variablen der Funktion, im Heap sind größere Objekte (Klassen, Arrays), die man nicht bei jedem Funktionsaufruf kopieren will.
Ausführlicher hier

Und zu Zeile 2:
x und y wurden doch als Funktionsargumente übergeben. Also ist zu Beginn x=1 und y=2. Nach den Vertauschungen dann c=1, x=2, y=1

__________________
Syntax Highlighting fürs Board (Link)
19.12.2014 07:36 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
neuling96
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von eulerscheZahl


Und zu Zeile 2:
x und y wurden doch als Funktionsargumente übergeben. Also ist zu Beginn x=1 und y=2. Nach den Vertauschungen dann c=1, x=2, y=1




was meinst du mit funktionswerte??

heißt dass das programm würde von hier gestartet???
public static void main(String[] args) {
{
int x = 1;
// *0*
int y = 2;
// *1*
swap(x, y);
// *3*
19.12.2014 16:15
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Moment mal, die "Funktionswerte" hast du eingeführt, erster und einziger Treffer auf dieser Seite Lehrer

Natürlich startet das Programm in der main, wo denn sonst?
Und Funktionsargumente sind das, was beim Aufruf in den Klammern steht: swap(x, y);

__________________
Syntax Highlighting fürs Board (Link)
19.12.2014 18:36 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » heaps und frames?