15_Formel
Code-Dateien
| Dateiname | Aktion |
|---|---|
| CODECode_Formel_D.zip | Download |
| CODECode_Formel_E.zip | Download |
PDF-Dokumente
| Dateiname | Aktion |
|---|---|
| PDFFolie_Berechne_D.pdf | Öffnen |
| PDFUebung_001.pdf | Öffnen |
| PDFUebung_002.pdf | Öffnen |
| PDFUebung_003.pdf | Öffnen |
| PDFUebung_004.pdf | Öffnen |
Videos
| Dateiname | Aktion |
|---|---|
| VIDEOVideo_Formel_D | Abspielen |
| VIDEOVideo_Formel_E | Abspielen |
Lernmaterialien
Formel
Code
Gegeben ist folgender Code:
public class Formel
{
public int calc(int a, int b)
{
return a+b;
}
public int calc(boolean ok, int value)
{
if (ok == true)
{
return 2*value;
}
else
{
return value+1;
}
}
public int calc(int x, int y, int z)
{
int res;
res = calc(true, z) + calc(x, z) + calc(false, y);
return res;
}
}Die drei Methoden haben eine unterschiedliche Signatur:
calc int int
calc boolean int
calc int int int
Aufruf
Durch den Methodenaufruf wird die Methode mit der Signatur
calc int int int ausgeführt.
Dabei ist:
Parameter
1Parameter
2Parameter
3
Durchführung
Aufruf
Es wird die Methode mit der Signatur calc boolean int
aufgerufen.
Parameter
trueParameter
3
Durchführung
Die if Abfrage liefert true
Es wird 2*3 = 6 zurückgegeben
Rücksprüng in die Methode
Es folgen weitere Methodenaufrufe nach dem selben Schema.
Debugger
Der Code muss Syntaxfehler FREI sein.
Das STOP Symbol definiert einen Haltepunkt.
Das Programm wird beim Erreichen des Haltepunktes angehalten.
Instance varibles … sind die Eigenschaften
Local variables … sind die Parameter und die lokalen Variablen
Step … springt über die Methode drüber
Step Into … springt in die Methode hinein
Unnötige Parameter
public int calc(int x, int y, int z, boolean ja)
{
int res;
res = calc(true, x) + calc(x, z) + calc(false, x);
return res;
}Es werden die Parameter x und z
verwendet.
Somit wurden die Parameter y und ja
nicht verwendet und sind aus dem Methodenkopf zu
entfernen.
public int calc(int x, int z)
{
int res;
res = calc(true, x) + calc(x, z) + calc(false, x);
return res;
}Achtung nun passt die Signatur möglicherweise nicht!