Einführung in die Programmierung mit BlueJ - mttcs.org · Einführung in die Programmierung mit...

Post on 01-Apr-2018

223 views 5 download

Transcript of Einführung in die Programmierung mit BlueJ - mttcs.org · Einführung in die Programmierung mit...

Einführung in die Programmierung mit BlueJ���

Thema 1 – Grundlagen der Programmierung mit BlueJ

Dr. Henry Herper – Otto-von-Guericke-Universität Magdeburg - WS 2013/14

2

Java 1991-92 Java (1995) Anwendungsgebiet: plattformunabhängige Sprache in Netzanwendungen Sprachklasse: objektorientierte Programmiersprache Java ist eine einfache, konsequent objektorientierte, robuste, architekturneutrale, übertragbare und dynamische Programmiersprache. Sie basiert auf der Programmiersprache C++, wurde aber wesentlich vereinfacht. Java-Programme werden in Bytecode kompiliert und können damit ohne weitere Kompilierung auf verschiedenen Computern ausgeführt werden, sofern es eine Java Virtual Machine dafür gibt. Professionelle Entwicklungsumgebungen stehen mit dem „Java Development Kit“ von Sun und Visual J++ von Microsoft zur Verfügung.

Programmieren

3

Editor

4

Java-Quelltexte können mit jedem beliebigen Texteditor erstellt werden. Die Dateien werden mit der Endung .java gespeichert. Bei Verwendung spezieller Editoren, wie z.B. dem BlueJ-Editor, wird die Programmerstellung durch vorgefertigte Codesequenzen und Syntaxhervorhebung (syntax highlighting) unterstützt. Weitere Entwicklungsumgebungen für Java-Programme sind Eclipse und NetBeans.

Zeichenvorrat und Bezeichner

5

Der Zeichenvorrat in Java umfasst die Großbuchstaben A..Z, die Kleinbuchstaben a..z, die Ziffern 0..9 und Sonderzeichen. Groß- und Kleinbuchstaben werden strikt unterschieden. Landespezifische Zeichen, zu denen auch die deutschen Umlaute gehören, sind zulässig. Auf ihre Verwendung sollte aber im Interesse der internationalen Austauschbarkeit verzichtet werden. Quelltext wird normalerweise in Kleinbuchstaben geschrieben. Eine Sonderstellung nehmen der Unterstrich und das Dollarzeichen ein. Beide sind in Namen zulässig. Aus den Zeichen werden Namen bzw. Bezeichner zusammengesetzt. Jeder Name muss mit einem Buchstaben, dem Unterstrich oder dem Dollarzeichen beginnen. Andere Sonderzeichen oder Leerzeichen sind in Namen nicht erlaubt. Schlüsselwörter dürfen nicht als Bezeichner verwendet werden.

Java – Bezeichner

6

Bezeichner:

Buchstabe

_ Buchstabe

_ $

$

Ziffer

Java – Schlüsselwörter

7

Bestimmte Bezeichner, die reservierten Wörter bzw. Schlüsselwörter, können vom Programmierer nicht als Bezeichner verwendet werden. Reservierte Wörter müssen immer klein geschrieben werden!

Die Literalkonstanten true und false dürfen nicht als Bezeichner verwendet werden.

abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protect public return short static strictfp super switch synchronize

d this throw throws transient try void volatile while

Dokumentation - Kommentare

8

Kommentare innerhalb einer Programmzeile werden mit // gekennzeichnet. Der nachfolgende Text wird von Compiler nicht ausgewertet und dient nur zur Dokumentation für den Programmierer. Beispiel: x = y + 3 // Wertzuweisung

Mehrzeilige Kommentare werden in /* .. */ eingeschlossen. In den Kommentarbereichen können Informationen abgelegt werden, die anschließend vom Java-Doc-System zur Dokumentationserstellung verwendet werden können. Beispiel: /Quelle: Java lernen mit BlueJ/ /** * Ein Kreis, der manipuliert werden kann und sich selbst auf einer Leinwand * zeichnet. * * @author Michael Kölling und David J. Barnes * @version 2008.03.30 */

Java – Trennzeichen

9

Zugelassene Trennzeichen in Java sind:

• Leerzeichen • Zeilenendezeichen (<ENTER>) • Tabulatorzeichen • Kommentare • Operatoren ( z.B. + oder * ) • die Interpunktionszeichen ( . , ; ) ( { } [ ] )

Da Java keine zeilenorientierte Programmiersprache ist, wird das Anweisungsendekennzeichen ; verwendet.

10

Regeln für die Gestaltung von Code

/RATZ07; Seite 52/

Entwicklungsumgebung BlueJ

11

BlueJ ist eine integrierte Entwicklungsumgebung für Java. Sie ist besonders geeignet, Programmieranfängern die Zusammenhänge der objektorientierten Programmierung in Verbindung mit der Programmiersprache Java zu vermitteln.

BlueJ wurde an der Deakin University, Melbourne, Australien und der University of Kent, Canterbury, Großbritannien, entwickelt und kann kostenlos von der Homepage heruntergeladen werden. Jede nicht kommerzielle Verwendung und Weitergabe von BlueJ ist für jedermann kostenlos.

Entwicklungsumgebung BlueJ   Zustimmung zur Verwendung der (anonymisierten)

Interaktionsdaten ist freiwillig und unabhängig vom Kurs   Einstellung kann jederzeit unter Preferences/

Miscellaneous geändert werden   Rechtsklick auf eine Klasse erlaubt Öffnen des Editors

(oder Doppelklick)   nach jeder Änderung des Quelltextes muss neu

kompiliert werden   Eingabeaufforderung wird angezeigt, wenn Eingabedaten

erforderlich sind   Ergebnisse werden in Ausgabefenster angezeigt oder in

Systemkonsole

12

Klassen und Objekte   „Eine Klasse beschreibt eine Sammlung von

Objekten mit gleichen Eigenschaften (Attributen), gemeinsamer Funktionalität (Methoden), gemeinsam en Beziehungen zu anderen Objekten und gemeinsamer Semantik.“

/Helmut Balzert; Lehrbuch der Softwaretechnik; Spektrum Verlag, 1996// 13

Klassen in BlueJ

14

import java.awt.*; import java.awt.geom.*;

/** * A circle that can be manipulated and that draws itself on a canvas. * * @author Michael Kolling and David J. Barnes * @version 1.0 (15 July 2000) */

public class Circle { private int diameter;

private int xPosition; private int yPosition; private String color; private boolean isVisible;

...

Klassen und Objekte   „Ein Objekt ist allgemein ein Gegenstand des

Interesses, insbesondere einer Beobachtung, Untersuchung oder Messung. Objekte können Dinge und Begriffe sein.

  In der objektorientierten Softwareentwicklung besitzt ein Objekt bestimmte Eigenschaften und reagiert mit einem definierten Verhalten auf seine Umgebung. Außerdem besitzt jedes Objekt eine Identität, die es von allen anderen Objekten unterscheidet.

  Die Eigenschaften eines Objektes werden durch dessen Attributwerte ausgedrückt, sein Verhalten durch eine Menge von Methoden.“

/Helmut Balzert; Lehrbuch der Softwaretechnik; Spektrum Verlag, 1996/ 15

Objekte in BlueJ

16

Nach Rechtsklick auf eine Klasse wird nach Auswahl des Eintrages „new Circle()“ ein Objekt erzeugt.

Dabei wird dem Objekt ein eindeutiger Name gegeben (wird vom System vorgeschlagen).

Objekt wird als rotes Rechteck visualisiert.

Attribut – Methode - Botschaft   „Die Attribute beschreiben die Daten bzw.

Eigenschaften einer Klasse. Alle Objekte einer Klasse besitzen dieselben Attribute, jedoch unterschiedliche Attributwerte. Das bedeutet für die Implementation, dass jedes Objekt Speicherplatz für alle seine Attribute erhalten muss.

  Eine Methode ist ein Algorithmus, der einem Objekt zugeordnet ist und von diesem abgearbeitet werden kann.

  Eine Botschaft ist eine Nachricht, die den Aufruf einer Methode gleichen Namens zur Folge hat.“

/Helmut Balzert; Lehrbuch der Softwaretechnik; Spektrum Verlag, 1996/ 17

BlueJ - Objektinspektor

18

Nach Rechtsklick auf ein Objekt „inspect“ auswählen – dann wird der Objektinspektor geöffnet. Hier werden die Attribute angezeigt.

BlueJ – Objekte und Methoden

19

Rechtsklick auf ein Objekt öffnet auch eine Liste aller Methoden dieses Objektes.

BlueJ – Objekte und Methoden

20

Über den Editor kann man auf die Attribute und die Methoden einer Klasse zugreifen.

Kontrollfragen und Aufgaben

21

1.  Was versteht man unter einem Bezeichner? Welche Regeln gelten für die Verwendung von Bezeichnern in Java? Welche der folgenden Bezeichner sind keine gültigen Bezeichner in Java? Begründen Sie ihre Aussage. Name, NAME, _jahr, daten.dat, 091004brief, brief_220909, vers$1, $XX3, class

2.  Was versteht man unter reservierten Wörtern in Java? Geben Sie 3 Beispiele an. Was ist bei der Benutzung und Schreibweise zu beachten?

3.  Wozu werden Kommentare in Java-Programmen verwendet? Wie werden sie gekennzeichnet? Gehen Sie dabei auf ein- und mehrzeilige Kommentare ein. Welche Informationen sollten im Kommentar vor einer BlueJ-Methode stehen?

4.  Erläutern Sie die Begriffe „Objekt“ und „Klasse“ im Zusammenhang mit der objektorientierten Softwareentwicklung. Beschreiben Sie in diesem Zusammenhang die Begriffe Attribut, Methode und Botschaft.

Literatur

22

Dietmar Ratz, Jens Scheffler, Detlef Seese, Jan Wiesenberger Grundkurs Programmieren in JAVA Carl Hanser Verlag München Wien, 2010, ISBN-13: 978-3-446-41655-0

David J. Barnes, Michael Kölling Java lernen mit BlueJ Pearson Studium, 2009, ISBN-13: 978-3-86894-001-5

Offizielle BlueJ-Webseite: www.bluej.org

Das BlueJ-Tutorial: http://www.bluej.org/tutorial/blueJ-tutorial-deutsch.pdf