E-Book, Deutsch, 254 Seiten, eBook
Reihe: Ausbildung und Studium
Rauh Objektorientierte Programmierung in JAVA
2., überarbeitete und erweiterte Auflage 2000
ISBN: 978-3-322-94096-4
Verlag: Vieweg & Teubner
Format: PDF
Kopierschutz: 1 - PDF Watermark
Eine leicht verständliche Einführung
E-Book, Deutsch, 254 Seiten, eBook
Reihe: Ausbildung und Studium
ISBN: 978-3-322-94096-4
Verlag: Vieweg & Teubner
Format: PDF
Kopierschutz: 1 - PDF Watermark
Weshalb Java? Die klassische Sprache der Programmierausbildung ist Pascal. Pascal war zwar ursprünglich keine objektorientierte Sprache, ist aber vor einigen Jahren um Möglichkeiten zur OOP erweitert worden. Heute kann man mit Pascal auf ganz unterschiedliche Weisen program mieren. Pascal-Programme, die von einem sachverständigen Entwickler geschrieben wur den, sind gewöhnlich leicht verständlich und übersichtlich. Leider hat Pascal in der Praxis nie so große Verbreitung gefunden wie in der Ausbildung. Java ist im Gegensatz zu Pascal rein objektorientiert und legt den Programmierer kon sequent auf die OOP fest. Für die Ausbildung ist dies eher günstig, weil einige Irrwege von vornherein ausgeschlossen werden. Hinsichtlich der Einfachheit und Übersichtlichkeit kann Java mit Pascal wohl nicht ganz mithalten, jedoch ist mit Java erheblich einfacher zu pro grammieren als mit einigen anderen objektorientierten Sprachen, wie z.B. C++. Ein ent scheidendes Argument zugunsten von Java und gegen Pascal ist die Relevanz ftir die Praxis. Wer heute Java lernt, hat gute Chancen, auch später im Beruf damit,zu arbeiten oder sich sogar als Student mit dem Schreiben von Programmen ein kleines Zubrot verdienen zu können. Wie lernt man Programmieren? Wenn Sie diesen Kurs sorgfältig durcharbeiten und vielleicht zusätzlich noch eine Vorle sung besuchen, haben Sie schon viel gewonnen. Sie werden auf das Wichtige hingewiesen, folgen einem roten Faden und können Baustein ftir Baustein aufeinander legen.
Zielgruppe
Professional/practitioner
Autoren/Hrsg.
Weitere Infos & Material
1 Programmieren heißt, Algorithmen zu entwerfen.- Algorithmen • Typische Eigenschaften von Algorithmen • Was nützt ein Algorithmus? • Vom Algorithmus zum Programm • Virtuelle Maschinen oder: Wie spreche ich mit meinem Computer? • Aufgaben.- 2 Programmieren heißt, Systeme zu bauen.- Weshalb Programmieren mehr ist, als Algorithmen zu schreiben • Was ist ein System? • Systemverhalten • Systemzustände • Die Teile eines Systems • Prinzipien zur Gestaltung von Systemen • Modelle und Modellierung • Prinzipien der Objektorientierten Programmierung (OOP) • Methoden • Aufgaben.- 3 Die ersten Programme.- des ersten Programms • Klassen: Baupläne für Objekte • Vorhandene Klassen benutzen • Die Klasse IntIO • Objekte erzeugen • Der Programmtext • Kommentare • Groß- und Kleinschreibung • Die Ausgabe sichtbar machen • Aufgaben • Rückschau • Das zweite Programm • Ein verfeinertes Kollaborationsdiagramm • Die Klasse Waehrungsrechner • Konstruktor • Eine Instanzenvariable • Methoden • die ausführbare Klasse Umrechnung • Aufgaben.- 4 Klassen schreiben.- Die Klasse Mitarbeiter — Vorbetrachtung• Die Beispielanwendung: Gehaltsliste • Die Deklaration der Klasse Mitarbeiter, erste Fassung • Datentypen: Klassen und andere • Ein Konstruktor • Methoden mit get und set • Selbstaufrufe mit thi s • Die ausführbare Klasse Gehaltsl i ste • Aufgaben • Verhalten, Zustand, Schnittstelle • Die zweite Fassung der Klasse Mitarbeiter • Klassenvariablen • Klassenmethoden • Konstruktoren • Methoden mit Objektparametern • Weshalb kein direkter Zugriff auf Instanzenvariablen? • Ein Programm zur Mitarbeitererfassung • Aufgaben.- 5 Variablen und Objekte.- Variablen sind Griffe • Arten von Variablen •Variablen mit einfachem Datentyp • Variablen, die auf Objekte verweisen • Initialisierung von Variablen • Variablen und Parameterübergabe • Namenräume • Aufgaben • Wenn Variablen sich verbergen.- 6 Steueranweisungen 1: Verzweigungen.- Die unvollständige Verzweigung (einfache if-Anweisung) • Zusammengesetzte Bedingungen • Verbundanweisungen (Blöcke) • Die vollständige Verzweigung • Geschachtelte Verzweigungen • Die Paarung • Verzweigungen mit Entscheidungsbäumen entwerfen • Geschachtelte Verzweigungen durch einfache Verzweigungen ersetzen • Eine größere Anwendung • Aufgaben • Zusammenfassung von Erhebung und Auswertung • Mehrfachauswahl • Aufgaben.- 7 Steueranweisungen 2: Schleifen.- Die Bedingungsschleife mit while (while-Schleife) • Die Zählschleife (for-Schleife) • Der Namensraum einer Schleifenvariablen • Geschachtelte Schleifen • Tabellarische Darstellung der Schleifendurchläufe (Trace) • Aufgaben.- 8 Rekursion.- Rekursive Definitionen • Eine rekursive Methode zur Fakultätsberechnung • Wie läuft eine rekursive Methode ab? • Die Bewegung zum Basisfall • Der Algorithmus des Euklid — rekursiv formuliert • Missbrauch der Rekursion: die Methode fibonacci () • Rekursion versus Iteration • Aufgaben.- 9 Arbeiten mit vielen Daten.- Arrays • Arrays mit primitiven Daten • Sofortige Zuweisung der Array-Daten • Arrays mit Objekten • Aufgaben • Sortieren — eine häufig gestellte Aufgabe • Sortieren durch Auswahl (selection sort) • Aufgaben • Mehrdimensionale Arrays • Aufgaben.- 10 Fallstudie: Robotersimulation.- Beschreibung der Anwendung • Die Architektur einer Anwendung • Die Architektur der Robotersimulation • Die Klasse Roboter • Die Klasse Robotsteuerung • Die KlasseArbeitsumgebung • Programmieren der Steuerung • Aufgaben • Noch einmal: Architektur.- 11 Datenbehälter.- Behälter und Verarbeitung • Schlangen, Stapel und Listen • Die Anwendung: Das Partnervermittlungssystem PVS • Die Architektur der Anwendung • Die Klasse Kunde • Der Aufbau einer verketteten Liste • Die Klasse Element • Die Klasse Kundenliste • Die Klasse PVS • Aufgaben • Bemerkungen zur Architektur • Aufgabe • Verkettung — eine vielfach anwendbare Technik.- 12 Vererbung.- Praxisbeispiel • Spezialisierung als Grundlage der Vererbung • Ein einfaches Beispiel • Unterklassen • Überschreiben von Methoden • Ein erweitertes Klassendiagramm • Benutzung der Klassen: das Programm • Auswahl der auszuführenden Methode • Polymorphie • Polymorphie mit Datenbehältern • Eine abstrakte Klasse • Die ausführbare Klasse GrussAusgabe2 • Typumwandlungen • Aufgaben • Die Klasse Object: Wurzel der Java-Klassenhierarchie.- 13 Graphische Benutzeroberflächen.- Die Klassenbibliotheken AWT und Swing • Ein leeres Anwendungsfenster • Eine Anwendung, die zeichnet • Layoutgestaltung: Layout-Manager • Layoutgestaltung: Darstellungsflächen ineinander schachteln • Vorteile der Java-Layouttechnik • Aufgaben.- 14 Ereignisverarbeitung.- Ereignisse • Prinzip der Ereignisverarbeitung • Hörerklassen und Hörerschnittstellen • Hörerklassen als innere Klassen schreiben • Eine Hörerklasse für alle Schaltflächen? • Verwendung einer Auswahlliste • Die Elemente neu ordnen • Aufgaben.- 15 Fallstudie: Verschiebespiel.- Die graphische Benutzeroberfläche • Die Architektur: Trennung von Programmlogik und GUI • Die Klasse Verschiebespiel • Die Klasse VSAWTUI • Umstellung auf eine Swing-Benutzeroberfläche •Aufgaben.- 16 Objekte dauerhaft speichern.- Persistenz • Persistenz in Java • Die Schnittstelle Serializable • Speichern • Daten einlesen • Aufgaben.- Lösungen 195 Programmtexte.- Lexikon der Fachbegriffe.- Java-Referenz.- Lesetipps 247 JDK.