Java lernen mit BlueJ

Ähnliche Dokumente
Inhaltsverzeichnis. Teil 1 Grundlagen der Objektorientierung 29

Inhaltsverzeichnis. Teil 1 Grundlagen der Objektorientierung. Kapitel 1 Objekte und Klassen Objekte und Klassen Instanzen erzeugen Methoden aufrufen

Objektorientierte Programmierung mit Java

Java lernen mit BlueJ

David J. Barnes Michael Kölling. Java lernen mit Bl. Eine Einführung in die objektorientierte Programme. 4., aktualisierte Auflage

Java lernen mit BlueJ

Teil I Objekte und Klassen 31

GERMAN language edition published by PEARSON DEUTSCHLAND GMBH, Copyright 2013.

David J. Barnes Michael Kölling. Objects first - Eine Einführung in Java. 6., aktualisierte Auflage

Programmieren mit Java

Statistik ohne Angst vor Formeln

Psychologie. Das Prüfungstraining zum Zimbardo. Deutsche Bearbeitung von Ralf Graf

Bankwirtschaft. Das Arbeitsbuch. Ralf Jürgen Ostendorf

C++ Programmieren mit einfachen Beispielen DIRK LOUIS

Objektorientierte Softwaretechnik

Einführung in die Allgemeine Betriebswirtschaftslehre

Statistik mit SPSS Fallbeispiele und Methoden

Grundzüge der Finanzmathematik

Grundzüge der Volkswirtschaftslehre Eine Einführung in die Wissenschaft von Märkten

Inhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1

Biostatistik. Eine Einführung für Biowissenschaftler

Grundlagen des Marketing

Martin Horn Nicolaos Dourdoumas. Regelungstechnik. Rechnerunterstützter Entwurf zeitkontinuierlicher und zeitdiskreter Regelkreise

Spektroskopie. Strukturaufklärung in der Organischen Chemie. Aus dem Amerikanischen von Carsten Biele

Controlling. Bernd Britzelmaier. Das Übungsbuch. 2., aktualisierte Auflage

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

Java als erste Programmiersprache

Mathematik für Ingenieure 2

Matthias W. Stoetzer Erfolgreich recherchieren

a part of Pearson plc worldwide

Christian H. Kautz Tutorien zur Elektrotechnik

Technische Fotografie Für Naturwissenschaftlicher, Mediziner und Ingenieure

Themenübersicht Verwendung im Studium Voraussetzungen Ziele Website zum Buch Danksagungen... 21

Übungsbuch Elektrotechnik

Controlling. Das Übungsbuch. Bernd Britzelmaier

Java. Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm

Das erwartet dich in diesem Buch 6. Kapitel 1 Bevor es losgeht 12

Inhaltsverzeichnis. Briefing 5. Lerneinheit 1. Lerneinheit 2

Inhaltsverzeichnis. 1 Grundlagen 9. Einleitung... 5

Grundlagen, Praxis, Handlungsfelder

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke

Statistik für Psychologen

Lineare Algebra. Theo de Jong. Higher Education. a part of Pearson plc worldwide

Bevor wir richtig anfangen... 8

Danksagung...6. Einleitung 7

Erfolgreich studieren

Buchführung und Bilanzierung nach IFRS

Übungen zur Makroökonomie

Inhaltsverzeichnis 1. Objektorientierung: Ein Einstieg 2. Objekte, Klassen, Kapselung

Psychologie macchiato

Tutorien zur Physik. In Zusammenarbeit mit der Physics Education Group University of Washington

Schaltsysteme Eine automatenorientierte Einführung

Robert Sedgewick Kevin Wayne Einführung in die Programmierung mit Java

Strategiebewusstes Management

Wissenschaftlich mit Word arbeiten

KOSTEN- UND LEISTUNGSRECHNUNG

Facebook-Marketing für Einsteiger

Grundzüge der Volkswirtschaftslehre. Peter Boinger Eric Mayer. Das Übungsbuch. 3., aktualisierte Aulage

Internationale Unternehmensbewertung

Die BlackBerry App World Alternativen zur App World Apps vom PC installieren

11.1 Parametrisierung einer ebenen Kurve Analysis mit der Parameterdarstellung Flächen und Längen in Polarkoordinaten...

Java-Grundkurs für Wirtschaftsinformatiker

Eclipse in der Java-Entwicklung

4. Vererbung. Idee der Vererbung. Wir wollen ein Verwaltungsprogramm für CDs und Videos entwickeln. Wir stellen uns dazu folgende Klassen vor:

Überschreiben von Methoden

Grundzüge der Finanzmathematik

Das erwartet dich in diesem Buch 8. Kapitel 1 Aufbruch ins Programmierabenteuer 14

Inhaltsübersicht Vorwort Einführung Moodle für Einsteiger/innen das kostenlose Lernmanagementsystem Mein erster Moodle-Kurs wie fange ich an?

Java lernen mit BlueJ

Objektorientierte Programmierung in Java

Inhaltsverzeichnis. Teil I Übungsaufgaben 1. Vorwort...

Objektorientiertes Programmieren in C++

Geschachtelte Klassen

Bibliografische Information der Deutschen Nationalbibliothek

Das Einsteigerseminar Objektorientierte Programmierung in Java

Lightroom 3 - PDF Inhaltsverzeichnis

Bevor wir richtig anfangen... 10

2.1 Visual C Express installieren Visual C Express starten Visual C Express registrieren...

Alexander Niemann. Das Einsteigerseminar" < Objektorientierte ^ Programmierung in Java. bhv. i.-

Inhaltsverzeichnis Einleitung Imperative Sprachkonzepte Objektorientierte Sprachkonzepte

1 Picasa herunterladen & installieren 11

7 optische SigNAle zeigen uns,

Grundzüge der Beschaffung, Produktion und Logistik

Transkript:

David J. Barnes Michael Kölling Java lernen mit BlueJ Eine Einführung in die objektorientierte Programmierung 4., aktualisierte Auflage Übersetzt von Axel Schmolitzky, Universität Hamburg ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam

Java lernen mit BlueJ - PDF Inhaltsverzeichnis Java lernen mit BlueJ - Eine Einführung in die objektorientierte Programmierung - 4., aktualisierte Auflage Inhaltsverzeichnis Vorwort von James Gosling, Sun Microsystems Vorwort an Kursleiter Vorwort zur vierten deutschen Ausgabe Projekte, die in diesem Buch detailliert besprochen werden Danksagunge Teil 1 Grundlagen der Objektorientierung Kapitel 1 Objekte und Klassen Kapitel 2 Klassendefinitionen Kapitel 3 Objektinteraktion Kapitel 4 Objektsammlungen Kapitel 5 Bibliotheksklassen nutzen Kapitel 6 Fehler vermeiden Kapitel 7 Klassenentwurf Teil 2 Anwendungsstrukturen Kapitel 8 Bessere Struktur durch Vererbung Kapitel 9 Mehr über Vererbung Kapitel 10 Weitere Techniken zur Abstraktion Kapitel 11 Grafische Benutzungsoberflächen Kapitel 12 Fehlerbehandlung Kapitel 13 Entwurf von Anwendungen Kapitel 14 Eine Fallstudie Anhang A Arbeiten mit BlueJ-Projekten Anhang Anhang B Datentypen in Java Anhang C Operatoren Anhang D Kontrollstrukturen in Java Anhang E Java ohne BlueJ Anhang F Benutzung des Debuggers Anhang G Testwerkzeuge für Modultests mit JUnit Anhang H Werkzeuge für die Teamarbeit Anhang I Javadoc Anhang J Quelltextkonventionen Anhang K Wichtige Bibliotheksklassen Sachregister Lizenzvereinbarung

Vorwort von James Gosling, Sun Microsystems Vorwort an Kursleiter Java BlueJ Objekte wirklich zuerst Iteratives Vorgehen Keine komplette Abdeckung der Sprache Java Projektorientiertes Vorgehen Konzepte statt Sprachkonstrukte Übersicht der Kapitel Vierte Auflage Zusatzmaterial Diskussionslisten Vorwort zur vierten deutschen Ausgabe Projekte, die in diesem Buch detailliert besprochen werden Figuren - Kapitel 1 Zeichnung - Kapitel 1 Laborkurse - Kapitel 1, Kapitel 2, Kapitel 8 Ticketautomat - Kapitel 2 Buch - Kapitel 2 Uhrenanzeige - Kapitel 3 Mail-System - Kapitel 3 Notizbuch - Kapitel 4 Auktion - Kapitel 4 Weblog-Auswertung - Kapitel 4 Technischer-Kundendienst - Kapitel 5 Baelle - Kapitel 5 Terminkalender - Kapitel 6 Rechner - Kapitel 6 Ziegelsteine - Kapitel 6 Zuul - Kapitel 7, Kapitel 9 DoME - Kapitel 8, Kapitel 9 Fuechse-und-Hasen - Kapitel 10 Bildbetrachter - Kapitel 11 Sound-Player - Kapitel 11 Adressbuch - Kapitel 12 Kinobuchungssystem - Kapitel 13

Taxi - Kapitel 14 Danksagungen Teil 1 Grundlagen der Objektorientierung 1 Objekte und Klassen 1.1 Objekte und Klassen 1.2 Instanzen erzeugen 1.3 Methoden aufrufen 1.4 Parameter 1.5 Datentypen 1.6 Eine Klasse, viele Instanzen 1.7 Zustand 1.8 Das Innenleben eines Objekts 1.9 Objektinteraktion 1.10 Quelltext 1.11 Ein weiteres Beispiel 1.12 Aufrufergebnisse 1.13 Objekte als Parameter 1.14 Zusammenfassung 2 Klassendefinitionen 2.1 Ticketautomaten Inhaltsverzeichnis 2.1.1 Das Verhalten des naiven Ticketautomaten 2.2 Eine Klassendefinition untersuchen 2.3 Datenfelder, Konstruktoren und Methoden 2.3.1 Datenfelder 2.3.2 Konstruktoren 2.4 Datenübergabe mit Parametern 2.5 Zuweisungen 2.6 Sondierende Methoden 2.7 Verändernde Methoden 2.8 Ausgaben in Methoden 2.9 Zusammenfassung des naiven Ticketautomaten 2.10 Bewertung des Entwurfs des naiven Ticketautomaten 2.11 Entscheidungen treffen: die bedingte Anweisung 2.12 Ein weiteres Beispiel für eine bedingte Anweisung 2.13 Lokale Variablen 2.14 Datenfelder, Parameter und lokale Variablen 2.15 Zusammenfassung des besseren Ticketautomaten 2.16 Übungen zur Selbstüberprüfung 2.17 Vertrautes neu betrachtet 2.18 Ausdrücke testen: die Direkteingabe 2.19 Zusammenfassung

3 Objektinteraktion 3.1 Das Uhren-Beispiel 3.2 Abstraktion und Modularisierung 3.3 Abstraktion in Software 3.4 Modularisierung im Uhren-Beispiel 3.5 Implementierung der Uhrenanzeige 3.6 Klassendiagramme und Objektdiagramme 3.7 Primitive Typen und Objekttypen 3.8 Der Quelltext im Projekt 3.8.1 Die Klasse 3.8.2 Verkettung von Zeichenketten 3.8.3 Der Modulo-Operator 3.8.4 Die Klasse 3.9 Objekte erzeugen Objekte 3.10 Mehrere Konstruktoren 3.11 Methodenaufrufe 3.11.1 Interne Methodenaufrufe 3.11.2 Externe Methodenaufrufe 3.11.3 Zusammenfassung der Uhrenanzeige 3.12 Ein weiteres Beispiel für Objektinteraktion 3.12.1 Das Beispiel eines Mail-Systems 3.12.2 Das Schlüsselwort 3.13 Die Benutzung eines Debuggers 3.13.1 Haltepunkte setzen 3.13.2 Einzelausführung 3.13.3 Hineinschreiten in Methoden 3.14 Mehr zu Methodenaufrufen 3.15 Zusammenfassung 4 Objektsammlungen 4.1 Objektsammlungen mit flexibler Größe 4.2 Ein persönliches Notizbuch 4.3 Ein erster Blick auf Bibliotheksklassen 4.3.1 Ein Beispiel für die Verwendung einer Bibliothek 4.4 Objektstrukturen mit Sammlungen 4.5 Generische Klassen 4.6 Nummerierung in Sammlungen 4.7 Elemente aus einer Sammlung entfernen 4.8 Komplette Sammlungen verarbeiten 4.8.1 Die for-each-schleife 4.8.2 Die while-schleife 4.8.3 Eine Sammlung durchlaufen 4.8.4 Zugriff mit Index oder über Iteratoren 4.8.5 Elemente entfernen 4.9 Zusammenfassung des Notizbuch-Beispiels Inhaltsverzeichnis

4.10 Ein weiteres Beispiel: ein Auktionssystem 4.10.1 Die Klasse 4.10.2 Die Klasse 4.10.3 Anonyme Objekte 4.10.4 Der Umgang mit Sammlungen 4.11 Zusammenfassung: Sammlungen mit flexibler Größe 4.12 Sammlungen mit fester Größe 4.12.1 Die Analyse einer Logdatei 4.12.2 Array-Variablen deklarieren 4.12.3 Array-Objekte erzeugen 4.12.4 Array-Objekte benutzen 4.12.5 Die Auswertung der Logdatei 4.12.6 Die for-schleife 4.12.7 Die for-schleife und Iteratoren 4.13 Zusammenfassung 5 Bibliotheksklassen nutzen 5.1 Die Dokumentation der Bibliotheksklassen 5.2 Das Kundendienstsystem 5.2.1 Das Kundendienstsystem erkunden 5.2.2 Den Quelltext untersuchen 5.3 Die Klassendokumentation lesen 5.3.1 Schnittstellen versus Implementierungen 5.3.2 Methoden von Bibliotheksklassen benutzen 5.3.3 Zeichenketten auf Gleichheit prüfen 5.4 Zufälliges Verhalten einbringen 5.4.1 Die Klasse 5.4.2 Zufallszahlen mit eingeschränktem Wertebereich 5.4.3 Zufällige Antworten generieren 5.4.4 Die Dokumentation generischer Klassen 5.5 Pakete und Importe 5.6 Benutzung von Map-Klassen für Abbildungen 5.6.1 Das Konzept einer 5.6.2 Die Benutzung einer 5.6.3 Benutzung einer Abbildung für das Kundendienstsystem 5.7 Der Umgang mit Mengen 5.8 Zeichenketten zerlegen 5.9 Abschluss des Kundendienstsystems 5.10 Die Klassendokumentation schreiben 5.10.1 javadoc in BlueJ nutzen 5.10.2 Die Elemente einer Klassendokumentation 5.11 Öffentliche und private Eigenschaften 5.11.1 Das Geheimnisprinzip 5.11.2 Private Methoden und öffentliche Datenfelder 5.12 Klassen über ihre Schnittstelle verstehen 5.13 Klassenvariablen und Konstanten

5.13.1 Das Schlüsselwort 5.13.2 Konstanten 5.14 Zusammenfassung 6 Fehler vermeiden 6.1 Einführung 6.2 Testen und Fehlerbeseitigung 6.3 Modultests in BlueJ 6.3.1 Objektinspektoren nutzen 6.3.2 Positives und negatives Testen 6.4 Tests automatisieren 6.4.1 Regressionstests 6.4.2 Automatisiertes Prüfen von Testergebnissen 6.4.3 Tests aufzeichnen 6.4.4 Testgerüste 6.5 Modularisierung und Schnittstellen 6.6 Ein Szenario für Fehlerbeseitigung 6.7 Kommentierung und Programmierstil 6.8 Manuelle Ausführung 6.8.1 Eine Ausführung auf erster Ebene 6.8.2 Den Zustand kontrollieren 6.8.3 Mündliche Ausführung 6.9 Ausgabeanweisungen 6.9.1 Ausgabeanweisungen an- und ausschalten 6.10 Die Wahl der richtigen Teststrategie 6.11 Debugger 6.12 Techniken umsetzen 6.13 Zusammenfassung 7 Klassenentwurf 7.1 Einführung 7.2 Die Welt von 7.3 Kopplung und Kohäsion 7.4 Code-Duplizierung 7.5 Erweiterungen für 7.5.1 Die Aufgabe 7.5.2 Ermitteln der betroffenen Quelltextstellen 7.6 Kopplung 7.6.1 Kapselung zur Reduzierung der Kopplung 7.7 Entwurf nach Zuständigkeiten 7.7.1 Zuständigkeiten und Kopplung 7.8 Änderungen lokal halten 7.9 Implizite Kopplung 7.10 Vorausdenken 7.11 Kohäsion

7.11.1 Kohäsion von Methoden 7.11.2 Kohäsion von Klassen 7.11.3 Kohäsion für bessere Lesbarkeit 7.11.4 Kohäsion für Wiederverwendbarkeit 7.12 Refactoring 7.12.1 Refactoring und Testen 7.12.2 Ein Beispiel für Refactoring 7.13 Refactoring für Sprachunabhängigkeit 7.13.1 Aufzählungstypen 7.13.2 Weitere Entkopplung der Befehlsschnittstelle 7.14 Entwurfsregeln 7.15 Programmausführung ohne BlueJ 7.15.1 Klassenmethoden 7.15.2 Die Methode 7.15.3 Einschränkungen für Klassenmethoden 7.16 Zusammenfassung Teil 2 Anwendungsstrukturen 8 Bessere Struktur durch Vererbung 8.1 DoME 8.1.1 Die Klassen und Objekte in DoME 8.1.2 Der Quelltext von DoME 8.1.3 Diskussion über DoME 8.2 Einsatz von Vererbung 8.3 Vererbungshierarchien 8.4 Vererbung in Java 8.4.1 Vererbung und Zugriffsrechte 8.4.2 Vererbung und Initialisierung 8.5 Weitere Medien für DoME 8.6 Vorteile durch Vererbung (bis hierher) 8.7 Subtyping 8.7.1 Subklassen und Subtypen 8.7.2 Subtypen und Zuweisungen 8.7.3 Subtyping und Parameterübergabe 8.7.4 Polymorphe Variablen 8.7.5 Der Cast-Operator 8.8 Die Klasse 8.9 Autoboxing und Wrapper-Klassen 8.10 Die Hierarchie der Sammlungstypen 8.11 Zusammenfassung 9 Mehr über Vererbung 9.1 Das Problem: die Methode zum Ausgeben 9.2 Statischer und dynamischer Typ 9.2.1 Aufrufe von ausgeben in Datenbank 9.3 Überschreiben von Methoden

9.4 Dynamische Methodensuche 9.5 super-aufrufe in Methoden 9.6 Methoden-Polymorphie 9.7 Methoden aus Object: tostring 9.8 Objektgleichheit: equals und hashcode 9.9 Der Zugriff über protected 9.10 Der Operator instanceof 9.11 Ein weiteres Beispiel für Vererbung mit Überschreiben 9.12 Zusammenfassung 10 Weitere Techniken zur Abstraktion 10.1 Simulationen 10.2 Die Füchse-und-Hasen-Simulation 10.2.1 Das Projekt 10.2.2 Die Klasse 10.2.3 Die Klasse 10.2.4 Die Klasse die Initialisierung 10.2.5 Die Klasse ein Simulationsschritt 10.2.6 Verbesserungen der Simulation 10.3 Abstrakte Klassen 10.3.1 Die Superklasse 10.3.2 Abstrakte Methoden 10.3.3 Abstrakte Klassen 10.4 Weitere abstrakte Methoden 10.5 Multiple Vererbung 10.5.1 Eine Klasse Akteur 10.5.2 Flexibilität durch Abstraktion 10.5.3 Selektive Darstellung 10.5.4 Zeichenbare Akteure: multiple Vererbung 10.6 Interfaces 10.6.1 Ein Interface Akteur 10.6.2 Multiple Vererbung für Interfaces 10.6.3 Interfaces als Typen 10.6.4 Interfaces als Spezifikationen 10.6.5 Ein weiteres Beispiel für ein Interface 10.6.6 Abstrakte Klasse oder Interface? 10.7 Zusammenfassung von Vererbung 10.8 Zusammenfassung 11 Grafische Benutzungsoberflächen 11.1 Einführung 11.2 Komponenten, Layout und Ereignisbehandlung 11.3 AWT und Swing 11.4 Das Beispiel: ein Bildbetrachter

11.4.1 Erste Schritte: ein Fenster erzeugen 11.4.2 Einfache Komponenten einfügen 11.4.3 Menüs hinzufügen 11.4.4 Ereignisverarbeitung 11.4.5 Die zentralisierte Variante für Ereignisverarbeitung 11.4.6 Innere Klassen 11.4.7 Anonyme innere Klassen 11.4.8 Zusammenfassung der zentralen GUI-Konzepte 11.5 Bildbetrachter 1.0: die erste komplette Version 11.5.1 Klassen zur Bildverarbeitung 11.5.2 Einfügen des Bildes 11.5.3 Layout 11.5.4 Geschachtelte Container 11.5.5 Bildfilter 11.5.6 Dialoge 11.5.7 Zusammenfassung der Layout-Verwaltung 11.6 Bildbetrachter 2.0: die Programmstruktur verbessern 11.7 Bildbetrachter 3.0: weitere GUI-Komponenten 11.7.1 Knöpfe 11.7.2 Rahmen 11.8 Zusätzliche Erweiterungen 11.9 Ein weiteres Beispiel: der Sound-Player 11.10 Zusammenfassung 12 Fehlerbehandlung 12.1 Das Adressbuch-Projekt 12.2 Defensive Programmierung 12.2.1 Interaktion zwischen Klient und Dienstleister 12.2.2 Parameter prüfen 12.3 Fehlermeldungen durch den Dienstleister 12.3.1 Den Benutzer informieren 12.3.2 Den Klienten informieren 12.4 Prinzipien der Ausnahmebehandlung 12.4.1 Das Auslösen einer Exception 12.4.2 Exception-Klassen 12.4.3 Die Auswirkungen einer Exception 12.4.4 Ungeprüfte Exceptions 12.4.5 Objekterzeugung verhindern 12.5 Die Behandlung von Exceptions 12.5.1 Geprüfte Exceptions: die throws-klausel 12.5.2 Exceptions fangen: der try-block 12.5.3 Werfen und Fangen mehrerer Exceptions 12.5.4 Eine Exception propagieren 12.5.5 Die finally-klausel 12.6 Neue Exception-Klassen definieren 12.7 Die Verwendung von Zusicherungen

12.7.1 Interne Konsistenzüberprüfungen 12.7.2 Die assert-anweisung für Zusicherungen 12.7.3 Richtlinien zur Benutzung von Zusicherungen 12.7.4 Zusicherungen und JUnit-Tests in BlueJ 12.8 Wiederaufsetzen und Fehlervermeidung 12.8.1 Wiederaufsetzen 12.8.2 Fehlervermeidung 12.9 Dateibasierte Ein- und Ausgabe 12.9.1 Reader, Writer und Streams 12.9.2 Textausgaben mit FileWriter 12.9.3 Einlesen von Text mit einem FileReader 12.9.4 Die Klasse File 12.9.5 Scanner: Eingaben von der Konsole lesen 12.9.6 Objektserialisierung 12.10 Zusammenfassung 13 Entwurf von Anwendungen 13.1 Analyse und Entwurf 13.1.1 Die Verb/Substantiv-Methode 13.1.2 Das Beispiel: ein Kinobuchungssystem 13.1.3 Identifizieren von Klassen 13.1.4 CRC-Karten 13.1.5 Szenarios 13.2 Klassenentwurf 13.2.1 Entwurf von Klassenschnittstellen 13.2.2 Entwurf von Benutzungsschnittstellen 13.3 Dokumentation 13.4 Kooperation 13.5 Prototyping 13.6 Softwarewachstum 13.6.1 Das Wasserfallmodell 13.6.2 Iterative Vorgehensmodelle 13.7 Der Einsatz von Entwurfsmustern 13.7.1 Struktur eines Musters 13.7.2 Dekorierer 13.7.3 Singleton 13.7.4 Fabrikmethode 13.7.5 Beobachter 13.7.6 Muster zusammengefasst 13.8 Zusammenfassung 14 Eine Fallstudie 14.1 Die Fallstudie 14.1.1 Die Problembeschreibung 14.2 Analyse und Entwurf 14.2.1 Identifizieren der Klassen 14.2.2 CRC-Karten benutzen

14.2.3 Szenarios 14.3 Klassenentwurf 14.3.1 Entwurf der Klassenschnittstellen 14.3.2 Partnerklassen 14.3.3 Die Rahmenimplementierung 14.3.4 Testen 14.3.5 Einige weitere offene Fragen 14.4 Iterative Entwicklung 14.4.1 Entwicklungsstufen 14.4.2 Eine erste Stufe 14.4.3 Testen der ersten Stufe 14.4.4 Eine spätere Stufe der Entwicklung 14.4.5 Weitere Ideen für die Weiterentwicklung 14.4.6 Wiederverwendung 14.5 Ein weiteres Beispiel 14.6 Ein Blick nach vorn Anhang A Arbeiten mit BlueJ-Projekten A.1 BlueJ installieren A.2 Ein Projekt öffnen A.3 Der Debugger in BlueJ A.5 BlueJ konfigurieren A.6 Auf deutsche Schnittstelle umstellen A.7 Einbinden lokaler API-Dokumentation A.8 Vorlagen für neue Klassen ändern Anhang B.1 Primitive Typen B Datentypen in Java B.2 Cast-Operator für primitive Typen B.3 Objekttypen B.4 Wrapper-Klassen B.5 Cast-Operator für Objekttypen C Operatoren C.1 Arithmetische Ausdrücke C.2 Boolesche Ausdrücke D Kontrollstrukturen in Java D.1 Kontrollstrukturen D.2 Auswahlanweisungen D.2.1 D.2.2 D.3 Schleifen D.3.1 D.3.2

D.3.3 D.4 Exceptions D.5 Zusicherungen E Java ohne BlueJ E.1 Java ohne BlueJ ausführen E.2 Konsolenanwendungen und die Problematik der Umlaute E.2.1 Zeichenkodierung für System.out anpassen E.2.2 Das Console-Objekt E.3 Ausführbare jar-dateien erzeugen E.4 Entwickeln ohne BlueJ F Benutzung des Debuggers F.1 Haltepunkte F.2 Die Kontrollknöpfe F.2.1 Anhalten F.2.2 Schritt über F.2.3 Schritt hinein F.2.4 Fortsetzen F.2.5 Beenden F.3 Anzeige der Variablen F.4 Die Anzeige der Aufruffolge F.5 Die Thread-Anzeige G Testwerkzeuge für Modultests mit JUnit G.1 Aktivieren der Test-Funktionalität G.2 Eine Testklasse erzeugen G.3 Eine Testmethode erzeugen G.4 Zusicherungen bei Tests G.5 Tests ausführen G.6 Testgerüste H Werkzeuge für die Teamarbeit H.1 Server-Einrichtung H.2 Teamarbeit-Funktionalität aktivieren H.3 Ein Projekt zur gemeinsamen Nutzung einrichten H.4 An einem Projekt gemeinsam arbeiten H.5 Aktualisieren und Abgeben H.6 Weitere Informationen I Javadoc I.1 Dokumentationskommentare I.1.1 Die Übersichtsbeschreibung I.1.2 Der Markierungsabschnitt I.2 Unterstützung für Javadoc in BlueJ J Quelltextkonventionen J.1 Benennung

J.1.1 Sprechende Namen verwenden J.1.2 Klassennamen beginnen mit einem Großbuchstaben J.1.3 Klassennamen sind Hauptwörter im Singular J.1.4 Methoden- und Variablennamen beginnen mit einem Kleinbuchstaben J.1.5 Konstanten werden in GROSSBUCHSTABEN geschrieben J.2 Layout J.2.1 Eine Stufe der Einrückung besteht aus drei Leerzeichen J.2.2 Alle Anweisungen innerhalb eines Blocks sind um eine Stufe eingerückt J.2.3 Klammern für Klassen und Methoden stehen allein auf einer Zeile J.2.4 Für alle anderen Blöcke steht die öffnende Klammer am Ende einer Zeile J.2.5 In Kontrollstrukturen immer Klammern verwenden J.2.6 Vor der öffnenden Klammer für den Block einer Kontrollstruktur steht ein Leerzeichen J.2.7 Operatoren links und rechts mit einem Leerzeichen absetzen J.2.8 Immer eine Leerzeile zwischen Methoden (und Konstruktoren) J.3 Dokumentation J.3.1 Jede Klasse wird mit einem Klassenkommentar eingeleitet J.3.2 Jede Methode hat einen Methodenkommentar J.3.3 Kommentare sind im Javadoc-Format J.4 Restriktionen bei der Sprachbenutzung J.4.1 Reihenfolge der Deklarationen: Datenfelder, Konstruktoren, Methoden J.4.2 Datenfelder dürfen nicht public deklariert werden (Ausnahme: konstante Datenfelder) J.4.3 Immer einen Zugriffsmodifikator benutzen J.4.4 Klassen einzeln importieren J.4.5 Immer einen Konstruktor deklarieren (auch wenn der Rumpf leer ist) J.4.6 Immer einen expliziten super-aufruf im Konstruktor einfügen J.4.7 Alle Datenfelder im Konstruktor initialisieren J.5 Programmiermuster J.5.1 Iteratoren für Sammlungen benutzen K Wichtige Bibliotheksklassen K.1 Das Paket java.lang K.2 Das Paket java.util K.3 Das Paket java.io K.4 Das Paket java.net K.5 Weitere wichtige Pakete Sachregister SYMBOLE A B C D E F

G H I J K L M N O P Q R S T U V W Z Lizenzvereinbarung Ins Internet: Weitere Infos zum Buch, Downloads, etc. Copyright

Copyright Daten, Texte, Design und Grafiken dieses ebooks, sowie die eventuell angebotenen ebook-zusatzdaten sind urheberrechtlich geschützt. Dieses ebook stellen wir lediglich als persönliche Einzelplatz-Lizenz zur Verfügung! Jede andere Verwendung dieses ebooks oder zugehöriger Materialien und Informationen, einschließlich der Reproduktion, der Weitergabe, des Weitervertriebs, der Platzierung im Internet, in Intranets, in Extranets, der Veränderung, des Weiterverkaufs und der Veröffentlichung bedarf der schriftlichen Genehmigung des Verlags. Insbesondere ist die Entfernung oder Änderung des vom Verlag vergebenen Passwortschutzes ausdrücklich untersagt! Bei Fragen zu diesem Thema wenden Sie sich bitte an: info@pearson.de Zusatzdaten Möglicherweise liegt dem gedruckten Buch eine CD-ROM mit Zusatzdaten bei. Die Zurverfügungstellung dieser Daten auf unseren Websites ist eine freiwillige Leistung des Verlags. Der Rechtsweg ist ausgeschlossen. Hinweis Dieses und viele weitere ebooks können Sie rund um die Uhr und legal auf unserer Website herunterladen: http://ebooks.pearson.de