Lecture 14 handlade om memory allocation, heap and stack.
Heap
- här sparas de dynamiska variablerna, ex = new GOval( ... )
- "växer nedåt", adresserna ökar
Stack
- Lokala variablar och parametrar. När programmet stängs så försvinner dessa.
- "växer uppåt", adresserna minskas
Att se som postlådor med olika adresser.
OBS! Gällande objekt. Om du kallar på en metod och skickar med ett objekt så skickar du själva objektet och inte en kopia. Vilket innebär att om du ändrar i objektet i den metoden och skickar det vidare så har du ändrat objektet. (Tänk Mona Lisa som du sågar itu).
You are passing by object (reference)
Detta till skillnad gällande primitiva värden (int, double, boolean, char) där "you pass by value".