• Keine Ergebnisse gefunden

252-0027 Einführung in die Programmierung 2.0 Einfache Java Programme

N/A
N/A
Protected

Academic year: 2022

Aktie "252-0027 Einführung in die Programmierung 2.0 Einfache Java Programme"

Copied!
110
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

252-0027

Einführung in die Programmierung

2.0 Einfache Java Programme

(2)

Übersicht

§ 2.0 Einfache Java Programme

§ 2.1 Methoden

§ Struktur

§ 2.2 Typen und Variable

§ Einfache (eingebaute) Typen

§ Deklaration von Variablen

(3)

2.0 Einfache Java Programme

§ Übersicht

§ Struktur

§ Namen

§ Output

(4)

2.0 Einfache Java Programme

§ Sie sollten Übung 0 gemacht haben

§ Oder sicher sein dass diese keine Schwierigkeiten macht

§ Ab Übung 1 müssen Sie in “myStudies” registriert sein um Aufgaben abgeben zu können

§ Stellt sicher dass Sie Programmfragmente erhalten können und Lösungen abgeben können

§ Fragen sie im Gruppentreffen heute/morgen bei Problemen

(5)
(6)

Beispiel: Bezeichner (“identifier”)

(7)

Java Regeln (vereinfacht)

EBNF Beschreibung bezeichner

lowercaseletter ⟸ a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z

uppercaseletter ⟸ A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

letterlowercaseletter | uppercaseletter

digit ⟸ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7| 8 | 9

(8)
(9)

Java Programme

§ Erstellen

§ Ausführen

§ Modifizieren

§ Eclipse IDE

(10)
(11)
(12)
(13)

Java

§ Wir ignorieren fürs erste viele Aspekte die nicht absolut notwendig zum Verständnis sind

§ 1. Ziel: Programm lesen

§ 2. Ziel: Programm verstehen

§ 3. Ziel: Programm erstellen

§ Oft durch Modifikation eines Programmes

§ Wir können aber nicht alles ignorieren …

(14)
(15)

Java Programm

javaprogram public class bezeichner { method

}

(16)
(17)

Java Programm

javaprogram public class bezeichner { method

}

methodpublic static void bezeichner ( String [ ] args ) {

statementsequence

(18)

§ main: Java Methode (Java Code den wir ausführen können)

§ Methode enthält Aufreihung (“sequence”) von Anweisungen

(19)
(20)
(21)
(22)
(23)

Java

§ Nicht alle Rückmeldungen des Übersetzers (“compilers”) sind

so klar

(24)
(25)
(26)

Wir machen mal weiter ….

(27)
(28)

§ Leicht zu übersehen: die letzte } fehlt

(29)
(30)

Zusammenfassung

public class name {

public static void main(String[] args) { statement;

statement;

...

statement;

} }

class: ein Programm mit Namen

statement: Anweisung die ausgeführt werden soll

method: Gruppe von

Anweisungen mit Namen main

Folge von Anweisungen

für jshell

(31)

§ Jedes (ausführbare) Java Programm besteht aus einer Klasse ( class )

§ die eine Methode main enthält,

§ die eine Reihe von Anweisungen enthält

§ Später arbeiten wir mit Programmen mit mehreren Klassen

(32)

Namen und Bezeichner

§ Jedes Programm braucht einen Namen public class HelloWorld {

§ Konvention: fängt mit Grossbuchstaben an

§ Konvention: Grossbuchstaben zur verbesserten Lesbarkeit

§ Regel: Dateiname gleich Programmname HelloWorld.java

§ Gross/Kleinbuchstaben sind (in Java) unterschiedlich

(33)
(34)
(35)
(36)

Wo sollten Kommentare stehen

§ Anfang des Programms

§ Zweck

§ Algorithmus

§ Author

§ Anfang jeder Methode

§ Darüber später mehr

§ Für Code der nicht sofort verständlich ist

§ Kommentare wichtig für grosse Projekte, Programme mit

mehreren Authoren, Programme die sich oft ändern

(37)

Beispiel

/*

* Author: Vorname Nachname; Herbst 2019, Uebung 1

* Entwurf uebernommen von Frau V. Nachname (Assistentin)

*/

public class HelloWorld {

public static void main(String[] args) {

System.out.println("Hello World!");

(38)
(39)
(40)

Beispiele

§ Beispiel:

System.out.println(“\\Hallo\nWie\tgeht es \”Ihnen\”?\\\\");

§ Output:

(41)

Beispiele

§ Beispiel:

System.out.println(“\\Hallo\nWie\tgeht es \”Ihnen\”?\\\\");

§ Output:

\Hallo

(42)

Fragen

§ Was drucken diese println Statements?

System.out.println("\ta\tb\tc");

System.out.println("\\\\");

System.out.println("'");

System.out.println("\"\"\"");

System.out.println("C:\neuer Spor\t Wagen");

§ Welches println Statement druckt diesen String?

/ \ // \\ /// \\\

(43)

Antwort

§ Output jedes println Statements:

a b c

\\

'

"""

C:

(44)

Antwort

§ println Statement um die gewünschte Zeitle Output zu erzeugen:

System.out.println("/ \\ // \\\\ /// \\\\\\");

(45)

252-0027

Einführung in die Programmierung 2.1 Methoden

Thomas R. Gross

(46)

Übersicht

§ 2.0 Einfache Java Programme

§ 2.1 Methoden

§ Struktur

§ 2.2 Typen und Variable

§ Einfache (eingebaute) Typen

§ Deklaration von Variablen

(47)

Zusammenfassung

public class name {

public static void main(String[] args) { statement;

statement;

...

statement;

}

class: ein Programm mit Namen

method: Gruppe von

Anweisungen mit

Namen main

(48)

Beispiel

/*

* Author: Ein Student; Herbst 2017, Uebung 1

* Entwurf uebernommen von einer Assistentin

*/

public class HelloWorld {

public static void main(String[] args) { System.out.println("Hello World!");

} // end main

} // end HelloWorld

(49)

2.1 Methoden

§ Beispiel: main im Program HelloWorld

§ Eine Klasse kann mehrere Methoden enthalten.

(50)
(51)

Methoden

§ Methode: Sequenz von Anweisungen mit einem Namen (dem der Methode)

§ Methoden strukturieren die Anweisungen

§ Anstatt alle Anweisungen in einer Methode (main) unterzubringen

§ Methoden erlauben es, Wiederholungen zu vermeiden

§ Eine (neue) Methode stellt eine neue Anweisung zur

(52)

static methods

§ static methods: Methode mit weiteren Eigenschaften

§ main ist eine static method (Keyword static vor Name)

§ main wird automatisch aufgerufen

§ Wir erklären gleich wie andere Methoden aufgerufen werden

(53)

(Zu) Einfaches Beispiel

public class PrintExample1 {

public static void main(String[] args) { System.out.println("\n---\n");

System.out.println("Warnung: sichern Sie die Daten\n");

System.out.println("\n---\n");

System.out.println("Lange Erklaerung");

System.out.println("\n---\n");

(54)

Output ---

Warnung: sichern Sie die Daten ---

Lange Erklaerung ---

Warnung: sichern Sie die Daten

---

(55)

Wie entstehen Methoden?

§ Entwickeln des Algorithmus

§ Lösung des Problems

§ Aufteilung in Teil-Probleme

§ Deklaration des Algorithmus (auf- schreiben, codieren)

§ Ausführen (aufrufen, “call”,

class

method main

n

statement

n

statement

n

statement method one

n

statement

n

statement

method two

(56)

(Zu) Einfaches Beispiel

public class PrintExample2 { // main fehlt noch

public static void printWarning() {

System.out.println("\n---\n");

System.out.println("Warnung: sichern Sie die Daten\n");

System.out.println("\n---\n");

}

}

(57)

§ Entwickeln des Algorithmus

§ Lösung des Problems

§ Aufteilung in Teil-Probleme

§ Deklaration des Algorithmus (auf- schreiben, codieren)

§ Ausführen (aufrufen, “call”,

class

method main

n

one

n

statement

n

two

method two

n

statement

n

statement method three

Wie entstehen Methoden?

(58)

(Zu) Einfaches Beispiel

public class PrintExample2 {

public static void main(String[] args) { printWarning();

System.out.println("Lange Erklaerung");

printWarning();

} // main

public static void printWarning() {

System.out.println("\n---\n");

System.out.println("Warnung: sichern Sie die Daten\n");

System.out.println("\n---\n");

}

}

(59)

Aufruf einer Methode

§ Syntax:

name();

§ Mehrfaches Aufrufen ist zulässig

methodinvocationbezeichner ( ) ;

§ Beispiel:

(60)

Aufruf einer Methode

§ Wenn die Anweisung name() (für die Methode name) ...; // irgendeine Anweisung

name (); // z.B. in main

stmtN; // naechste Anweisung

ausgeführt wird, dann wird die Methode name aufgerufen ("invoked", "called")

§ Damit beginnt die Ausführung der Methode name .

§ Es gibt auch andere Wege, eine Ausführung zu starten, aber diese interessieren uns (noch) nicht.

§ Wenn name fertig ist, geht es mit stmtN weiter

(61)
(62)

§ Wenn eine Methode aufgerufen wird, dann

§ ”springt” die Ausführung zur Methode und führt die Anweisungen der Methode aus und danach

§ ”springt" die Ausführung wieder zu dem Ort zurück von dem der Aufruf erfolgte

§ Und es geht weiter mit der nächsten Anweisung

§ Anordnung der Methoden im Programm(text) ohne Bedeutung

Kontrollfluss bei Methodenaufruf

(63)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

(64)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier fangen

wir an

(65)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

1. Anweisung

(66)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier geht es

weiter

(67)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

1. und letzte

Anweisung

(68)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier geht es

weiter

(69)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

Hier geht es

weiter

(70)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

1. Anweisung

(71)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

(72)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier geht es

weiter

(73)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

1. und letzte

Anweisung

(74)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier geht es

weiter

(75)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

(76)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2 }

Hier geht es

weiter

(77)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

Letzte

Anweisung

(78)

Methoden die Methoden aufrufen

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Ende von \"main\" ");

} // main

public static void message1() {

System.out.println("Nachricht 1: Fertig");

} // message1

public static void message2() {

System.out.println("Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

} // message2

}

(79)

Output

§ Nachricht 1: Fertig

§ Die 2. Nachricht:

§ Nachricht 1: Fertig

§ Ende von Nachricht 2

§ Ende von "main"

(80)

public class MethodsExample {

public static void main(String[] args) { message1();

message2();

System.out.println("Done with \"main\".");

} ...

public static void message1() {

System.out.println("Nachricht 1: Fertig");

}

public static void message2() {

System.out.println(" Die 2. Nachricht:");

message1();

System.out.println("Ende von Nachricht 2");

}

public static void message1() {

System.out.println("Nachricht 1: Fertig");

}

Kontrollfluss

(81)

Einfaches Beispiel

(Wir verwenden jetzt println weil es einfach ist. Spätere

Java Programme benutzen eine andere Schnittstelle für

Benutzer.)

(82)

Beispiel mit static methods

Schreiben Sie ein Programm um diese Figuren zu drucken

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

\ /

\______/

______

/ \ / \ +---+

(83)

Entwicklungsschritte

Version 1: (ohne Ausnutzen der Struktur)

n

Erstellen Sie ein Programm mit leerer main Methode.

n

Kopieren Sie den erwünschten Output in main und schreiben für jede Zeile eine entsprechende

System.out.println Anweisung.

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

(84)

Program Version 1

public class Figures1 {

public static void main(String[] args){

System.out.println(" ______");

System.out.println(" / \\");

System.out.println("/ \\");

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println();

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println("+---+");

System.out.println();

System.out.println(" ______");

System.out.println("/ \\");

System.out.println("| STOP |");

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println();

System.out.println(" ______");

System.out.println(" / \\");

System.out.println("/ \\");

System.out.println("+---+");

} // main

(85)

Entwicklungsschritte

Version 2: (mit Ausnutzen der Struktur, mit Redundanz)

n

Identifizieren Sie (eventuell vorhandene) Strukture(n).

n

Unterteilen Sie die main Methode basierend auf Ihrer Strukturierung.

n

Führen Sie die Methode aus um den Output mit der

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

(86)

Struktur des Output

Strukturen in dieser Figur

n

oben: Sechseck (Hexagon) (oder Ball …)

n

darunter: ”Wanne” (oder Suppentasse …)

n

drittens ”STOP Schild" Figur

n

viertens ”Trapez" (oder Hut Figur …) Struktur à Methoden :

n

hexagon

n

wanne

n

stopSign

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

\ /

\______/

______

/ \ / \

(87)

Program Version 2

public class Figures2 {

public static void main(String[] args) { hexagon();

wanne();

stopSign();

hut();

} //main

...

(88)

Program Version 2, Fortsetzung

... public static void hexagon() {

System.out.println(" ______");

System.out.println(" / \\");

System.out.println("/ \\");

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println();

}

public static void wanne() {

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println("+---+");

System.out.println();

}

(89)

Program Version 2, Fortsetzung

...

public static void stopSign() {

System.out.println(" ______");

System.out.println(" / \\");

System.out.println("/ \\");

System.out.println("| STOP |");

System.out.println("\\ /");

System.out.println(" \\______/");

System.out.println();

}

public static void hut() {

System.out.println(" ______");

(90)

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

\ /

\______/

______

/ \ / \

Entwicklungsschritte

Version 3 (mit Ausnutzen der Struktur, ohne Redundanz)

n

Identifizieren Sie (eventuell vorhandene) Strukture(n) und Redundanz

n

Erstellen Sie Methoden um (soweit möglich) Redundanz zu vermeiden

n

Kommentieren Sie den Code

n

Führen Sie die Methode aus

(91)

______

/ \ / \

\ /

\______/

\ /

\______/

+---+

______

/ \ / \

| STOP |

Redundanz im Output

n

Hexagon oberer Teil: im Stop Schild und Hut wiederverwendet

n

Hexagon unterer Teil: in Wanne und Stop Schild

n

Trennlinie: in Wanne und Hut

n

Diese Redundanz kann durch diese Methoden ausgenutzt

(d.h. eliminiert) werden:

(92)
(93)

Program Version 3

// Ihr Name, 252-0027, Herbst 2020

// Prints several figures, with methods for structure and redundancy.

public class Figures3 {

public static void main(String[] args) { hexagon();

wanne();

stopSign();

hut();

}

// Draws the top half of an an hexagon.

public static void hexagonTop() {

System.out.println(" ______");

(94)

Program Version 3, Fortsetzung

...

// Draws the bottom half of an hexagon.

public static void hexagonBottom() { System.out.println("\\ /");

System.out.println(" \\______/");

}

// Draws a complete hexagon.

public static void hexagon() { hexagonTop();

hexagonBottom();

System.out.println();

}

...

(95)

Program Version 3, Fortsetzung

...

// Draws a tub (“Wanne”) figure.

public static void wanne() { hexagonBottom();

line();

System.out.println();

}

// Draws a stop sign figure.

public static void stopSign() {

hexagonTop();

(96)

Program Version 3, Fortsetzung

...

// Draws a figure that looks sort of like a hat (“Hut”).

public static void hut() { hexagonTop();

line();

}

// Draws a line of dashes.

public static void line() {

System.out.println("+---+");

}

} //Figures3

(97)

2.2 Typen und Variable

(98)

Typen

§ Typen (“types”) beschreiben Eigenschaften von Daten

§ Ein Typ beschreibt eine Menge (oder Kategorie) von Daten Werten.

§ Bestimmt (beschränkt) die Operationen, die mit diesen Daten gemacht werden können

§ Viele Programmiersprachen erfordern die Angabe (Spezifikation) von Typen

§ Typen Beispiele: ganze Zahlen, reelle Zahlen, Strings

§ Typen sind Teil der Dokumentation (was verarbeitet diese

(99)

Typen

§ Die Programmiersprache legt fest, wie ein Typ implementiert ist

§ "Implementiert" – Darstellung der Werte und Definition der Operationen

§ Die interne Darstellung eines Types beruht auf Kombinationen von 1s und 0s

97 à 01100001

(100)

Typen

§ Die Programmiersprache legt fest, wie ein Typ implementiert ist

§ "Implementiert" – Darstellung der Werte und Definition der Operationen

§ Die interne Darstellung eines Types beruht auf Kombinationen von 1s und 0s

97 à 01100001

"ab" à 01100001 01100010

(101)

Typen

§ Die Programmiersprache legt fest, wie ein Typ implementiert ist

§ Die interne Darstellung eines Types beruht auf Kombinationen von 1s und 0s

97 à 01100001

(102)
(103)
(104)

Am 1. Tag hatten mit der Java Shell …

trg$ jshell

| Welcome to JShell -- Version 11.0.4

| For an introduction type: /help intro jshell> int wert1 = 2147483647

wert1 ==> 2147483647 jshell> wert1 + 1

$2 ==> -2147483648

jshell> //grosse ganze Zahl + 1 ergibt negative zahl

(105)

Eingebaute Typen in Java

§ Integrierte Typen (“primitive types”): 8 einfache Typen für Zahlen, Text, etc.

Name Beschreibung Beispiele

§ int ganze Zahlen 42, -3, 0, 2147483647

§ long grosse ganze Zahlen 42, -3, 0, 9223372036854775807

§ double reelle Zahlen 3.1, -0.25, 9.4e3

(106)

Weiter mit der JShell

jshell> long bignumber = wert1 bignumber ==> 2147483647

jshell> bignumber + 1

$4 ==> 2147483648

(107)
(108)

Warum Typen

§ Programme manipulieren Symbole

§ Beispiel EBNF: Symbole aus Zeichen aus einer Menge (”Alphabet”)

§ Legal oder nicht

§ Programme übersetzen Sprachen, spielen Schach , berechnen die Steuerschuld

§ Symbole werden verknüpft, verglichen, geändert, gelesen, ….

§ Typen verhindern Fehler

§ Kann nicht die AHV Nummer zum Gehalt addieren

§ Kann nicht Volumen und Fläche addieren

§ Typen erlauben Optimierungen (der Berechnung, der Darstellung)

(109)

Ausdrücke (“Expressions”)

§ Ausdruck (“expression”) für einen Typ: Ein Wert oder Operanden und Operator(en) die einen Wert berechnen

• Beispiele für int: 1 + 4

2 * 4 * 3

7 + ( 2 + 6 )* 5

§ Der einfachste Ausdruck ist ein Literal (“literal value”)

(110)

Referenzen

ÄHNLICHE DOKUMENTE

§ Programm: Folge von Anweisungen, die von einem Computer ausgeführt werden (können).. § Programm realisiert

§ Wenn wir eine Methode deklarieren dann geben wir an, dass diese Methode einen Parameter braucht. § Wenn wir die Method aufrufen, dann geben wir einen

§ Eine Methode die einen Rückgabewert deklariert muss eine (oder mehrere) return Anweisung(en)

Ihr Programm muss diese Bedingung nicht zwingend testen, Sie können aber eine Überprüfung implementieren. Wenn zahl diese Bedingung nicht erfüllt, dann ist das Ergebnis des

§ Eine Variable die in einer for Schleife deklariert wurde kann nur im Rumpf der Schleife verwendet werden. § Eine Variable die in einer Methode deklariert wurde existiert nur in

§ Wenn eine Methode einen Parameter erwartet dann muss dieser auch übergeben werden. printPunkte(); // ERROR: parameter value

Eclipse hilft Ihnen dabei, indem es anzeigt, wo die Fehler sind (und eine mehr oder weniger hilfreiche Fehlermeldung dazu ausgibt), aber Sie müssen selber herausfinden, was das

Beachten Sie ausserdem, dass Eclipse Ihnen beim Ausführen des Programms möglicherweise eine Fehlermeldung anzeigt, da das Programm “FollerVehler.java” noch Fehler enthält, die