faecher:informatik:oberstufe:algorithmen:rekursion:programmaufrufstack:start

Dies ist eine alte Version des Dokuments!


Der Programmaufrufstack

Unter dem (Programm)Aufrufstapel (englisch call stack, procedure stack) versteht man einen besonders genutzten Stapelspeicher, der zur Laufzeit eines Programms den Zustand der gerade aufgerufenen Unterprogramme enthält.

Was bedeutet das? Wir betrachten ein Beispiel:

public class Hallo
{
    public Hallo(String name)
    {
        System.out.println("Hallo " + name + "!");
        GruessGott(name);
        System.out.println("Ich glaube, gleich verabschiede ich mich...");
        AufWiedersehen(); 
        AufWiedersehen();
    }
 
    public void GruessGott(String name) {
        System.out.println("Grueß Gott, " + name + "!");
 
    }
 
    public void AufWiedersehen() {
        System.out.println("Ciao!");
    }
 
}

Beim Aufruf des Konstruktors werden also zwei weitere Methoden, also "Unterprogramme", aufgerufen, der Ablauf sieht etwa wie folgt aus.

Dabei fällt auf, dass der Programmablauf nach jedem Aufruf eines Unterprogramms zu der Stelle zurückkehren muss,, von der dieses aufgerufen wurde.

  • faecher/informatik/oberstufe/algorithmen/rekursion/programmaufrufstack/start.1642062521.txt.gz
  • Zuletzt geändert: 13.01.2022 09:28
  • von sbel