Re(4): Java - While Frage
Geizhals » Forum » Programmierung » Java - While Frage (5 Beiträge, 55 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
.  Re: Java - While Frage  (Somnatic am 17.01.2003, 08:49:35)
..  Re(2): Java - While Frage  (Somnatic am 17.01.2003, 08:50:00)
...  Re(3): Java - While Frage  (The Brain am 17.01.2003, 08:59:16)
....
Re(4): Java - While Frage
17.01.2003, 09:14:08
ok, machmas kurz:

Die Funktion liest das von dir eingegebene Zeichen ein. Sie versucht es nun umzuwandeln (in den Datentyp integer). Wenn dies gelingt, wird die Variable done auf true gesetzt.

Wenn dies jedoch nicht gelingt, so ist der try/catch Block (dieser ist für Exception Handling, also Ausnahmebehandlungen da) da. Angenommen du würdest die Variable so einfach umwandeln, würde das Programm eine Fehlermeldung ausgeben und sich beenden (ungültige Anweisung, was weiss ich).
Der try/catch Block fängt das jedoch ab (try ... Versuch das ... catch .. Wenn eine Fehlermeldung auftritt, fang sie ab). Wenn du nun einen Buchstaben eingegeben hast, dann kann er das nicht in einen Datentyp integer wandeln, er wirft eine Fehlermeldung (nennt sich auch throw) und springt in den catch Block. Dort wird die Variable done auf false gesetzt.


Nun hast du die Tastaturabfrage beendet (du hast was eingegeben) und mit Enter bestätigt. Er springt nun also zur nächsten Anweisung: nämlich:
while(In.done()){

done ist eine funktion die entweder true oder false liefert (je nachdem ob die Umwandlung geklappt hat oder nicht).

du könntest auch direkt auf die Variable true zugreifen, nur widerspräche das dem Konzept der Objektorientierung (man greift nicht auf Variablen zu, diese dürfen nur von klassen funktionen gehandhabt werden sondern man benutzt methoden; das ist in etwa das Prinzip der Kapselung)

Fall 1: done liefert true: das beudeutet die Umwandlung war erfolgreich und man kann was damit anfangen (die Schleife wird ausgeführt)
Fall 2: die Bedingung damit die schleife ausgeführt wird ist false, die schleife wird übersprungen und weil das Programm zuende ist wird es beendet.





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Besucher machen immer Freude, wenn nicht beim KOMMEN, dann doch beim GEHEN

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung