13_ifParameter

Code-Dateien

DateinameAktion
CODECode_ClassRoom.zipDownload
CODECode_Fenster.zipDownload
CODECode_Student.zipDownload
CODECode_Urlaub.zipDownload

PDF-Dokumente

DateinameAktion
PDFFolie_ClassRoom.pdfÖffnen
PDFFolie_Student.pdfÖffnen
PDFFolie_Urlaub.pdfÖffnen
PDFUebung_Computer.pdfÖffnen
PDFUebung_Labor.pdfÖffnen
PDFUebung_Wohnung.pdfÖffnen

Videos

DateinameAktion
VIDEOVideo_ClassRoom_EAbspielen
VIDEOVideo_Fenster_DAbspielen
VIDEOVideo_Student_DAbspielen
VIDEOVideo_Urlaub_DAbspielen

Lernmaterialien

Parameterprüfung

Ausgangslage

001.png

Das alterwurde mit -22übergeben.

Erwartetes Ergebnis:

  • Fehlermeldung

  • Defaultwert für das alterwird angenommen.

002.png

Tatsächliche Ergebnis:

  • keine Fehlermeldung

  • alter = -22

003.png
004.png

Auch bei einem zu großem Wert kam keine Fehlermeldung und auch der Defaultwert wurde nicht gesetzt.

if Abfrage

Syntax

if (condition)
{
    command;
    command;
}
else
{
    command;
    command;
}

Logische Verknüpfungen

Die Bedingungen können wie folgt verknüpft werden:

  • and &&

  • or ||

  • xor ^

  • not !

a<4   b>3    |  ((a<4)&&(b>3))  |  ((a<4)||(b>3))  |  ((a<4)^(b>3))
true  true   |       true       |       true       |       false
true  false  |       false      |       true       |       true
false true   |       false      |       true       |       true
false false  |       false      |       false      |       false
a<4    |  ! (a<4)
true   |   false
false  |   true

Vergleichsoperatoren

Es stehen folgende Vergleichsoperationen zur Verfügung.

a == 3        Gleichheit
a < 5         Kleiner
a > 7         Grosser
a <= 3        Kleiner gleich
a >= 7        Grosser gleich

Es gbit keine Gleichheit bei Kommazahlen!

Bei einem String muss man über Methoden den Vergleich anstellen.

setAlter

Jede Änderung der Eigenschaft alterwird über die setAlter() Methode durchgeführt. Das ist der zentrale Punkt für die Parameterprüfung!

    public void setAlter(int alter)
    {
        if ((alter >= 14) && (alter < 65))
        {
            this.alter = alter;
        }
        else
        {
            System.out.println("Fehler: das Alter muss zwischen 14 und 65 sein!");
            this.alter = 14;
        }
    }

!!! VERBOTEN !!!

    public Student(String name, int alter, boolean matura)
    {
        this.name = name;
        this.alter = alter;
        this.matura = matura;
    }

Dabei werden sämtliche Parameterprüfungen übersprungen!!!

Test

Unter 14 Jahre

005.png
006.png
007.png

Gültig

008.png
009.png

Über 65 Jahre

010.png
011.png
012.png