faecher:informatik:mittelstufe:bauernhof:ab6:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:mittelstufe:bauernhof:ab6:start [18.06.2024 09:38] – angelegt Marco Kuemmelfaecher:informatik:mittelstufe:bauernhof:ab6:start [01.07.2024 10:40] (aktuell) Marco Kuemmel
Zeile 17: Zeile 17:
 Den aktuellen Wert von Eigenschaften kann man in der Regel mit einer Methode abfragen, deren Name mit "get..." oder "gib..."  beginnt, z.B.: Den aktuellen Wert von Eigenschaften kann man in der Regel mit einer Methode abfragen, deren Name mit "get..." oder "gib..."  beginnt, z.B.:
  
-''getHunger()'' bzw. ''getDurst()'' wird dir die Restenergie als Antwort nennen+''getHunger()'' bzw. ''getDurst()'' wird dir die Restenergie als Antwort nennen
  
 Die aktuellen Werte aller Attribute bestimmen den **Zustand** einer Figur. Die aktuellen Werte aller Attribute bestimmen den **Zustand** einer Figur.
Zeile 29: Zeile 29:
 === (A2) === === (A2) ===
 Notiere, welche weiteren Eigenschaften des Huhns in Attributen gespeichert sind. Nenne mindestens eine Methode, mit der Du den Wert eines Attributs ändern kannst. Notiere, welche weiteren Eigenschaften des Huhns in Attributen gespeichert sind. Nenne mindestens eine Methode, mit der Du den Wert eines Attributs ändern kannst.
 +
 +
 +===== Wie Variablen funktionieren =====
 +
 +Jede Variable zeigt im Hintergrund (für uns nicht sichtbar) auf genau eine Stelle (= Adresse) im Arbeitsspeicher des Computers. Damit wir uns nicht die kryptische Adresse merken müssen gibt es die Variablennamen. Mithilfe des Variablennamens können wir uns jederzeit den Wert anzeigen lassen der an dieser Stelle gespeichert wird oder ihn auch ändern. Namen von Variablen beginnen mit einem __Klein__buchstaben. Setzt sich der Name aus mehreren Wörtern zusammen, darf man keine Leerzeichen verwenden, sondern man beginnt jedes neue Wort mit einem __Groß__buchstaben. Das bezeichnet man als Camel-Case. Aus „Schritte bis zur Wand“ wird also z. B. „__s__chritte__B__is__Z__ur__W__and“.
 +
 +An jeder Adresse gibt es zu jedem Zeitpunkt genau einen aktuell gültigen Wert. Mit set‑Methoden (und auch durch andere Methoden) werden die Werte geändert. Mit der get‑Methode wird nach dem aktuellen Wert gefragt und dieser Wert wird dann dem Anfragenden als Ergebnis genannt. Dabei verbleibt der Wert unverändert in der Variable. 
 +
 +Der Typ der Variable legt u. a. die Größe des Speicherplatzes fest und außerdem sagt er dem Programm, als was es die Daten interpretieren muss. Du weißt bereits, dass Computer Daten als Binärzahlen speichern. Wenn man nun an eine Speicherplatz im Arbeitsspeicher schaut, dann wird man nur lange Folgen aus 1 und 0 sehen ohne zu wissen, ob man diese z. B. gerade als Zahl, als Buchstaben oder als etwas gänzliches anderes interpretieren muss. Nur durch den Datentyp weiß der Computer z. B.: "Aha, diese Bitfolge muss ich als Ganzzahl (int) interpretieren!".
 +
 +Für uns relevant sind zunächst die folgenden drei Datentypen:
 +  * **int** (32 Bit = 4 Byte groß) für Ganzzahlen zwischen -2.147.483.648 und +2.147.483.647
 +  * **boolean** (1 Byte) für den Wahrheitswert true oder false
 +  * **String** (flexible Länge) für beliebige Texte
 +
 +Innerhalb des Computers kann man sich das alles dann wie folgt vorstellen:
 +
 +{{ :faecher:informatik:mittelstufe:bauernhof:ab6:ab6_2.png?650 |}}
 +
 +Die Zeichnung zeigt drei Variablen unterschiedlichen Typs. Für den Integer-Wert wurde direkt die Binärdarstellung gewählt, da du diese bereits kennst ($101_2$ ist $5_{10}$, vorne wird mit 0ern aufgefüllt). Boolean und String werden hier im Arbeitsspeicher vereinfacht dargestellt (sind „in echt“ auch Binärzahlen).
 +
 +Das Programm weiß dank des Datentyps also sowohl, in wie vielen Bytes an Arbeitsspeicher es nachschauen muss und auch, wie es die dortigen 0er und 1er zu interpretieren hat.
  • faecher/informatik/mittelstufe/bauernhof/ab6/start.1718703501.txt.gz
  • Zuletzt geändert: 18.06.2024 09:38
  • von Marco Kuemmel