Einführung in Java

Ideal für den Studieneinstieg. Aktuell zu Java 8.

(Autor)

Buch | Hardcover
678 Seiten
2015
Rheinwerk (Verlag)
978-3-8362-2867-1 (ISBN)

Lese- und Medienproben

Einführung in Java - Kai Günster
29,90 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
  • Ohne Vorkenntnisse in die Programmierung einsteigen
  • Aktuelle Best Practices von Anfang an
  • Sprachgrundlagen, Objektorientierung, GUIs mit JavaFX und vieles mehr
  • Alles mit reichlich Codebeispielen, Aufgaben und Lösungen
  • Aktuell zu Java 8

Dieses Werk führt von Grund auf in die objektorientierte Programmierung mit Java ein. Ohne Vorkenntnisse lernen Sie die Sprache und ihre Konzepte Schritt für Schritt kennen. Sie lernen, in Algorithmen zu denken, in Java zu programmieren und die Werkzeuge der Plattform zu nutzen. So schreiben Sie zeitgemäßen Code, der auch komplexe Software trägt.
Ideal für Ausbildung und Studium!

Sprache und Konzepte
Kein doppelter Espresso, sondern Java für die Ausbildung und das Studium: Die Grundlagen der Sprache von Anfang an erklärt, Konzepte der Programmierung ebenso.

Objekte, Vererbung und sehr viel mehr
Objektorientierung zu verstehen, hört bei Klassen und Vererbung nicht auf. Fangen Sie vorne an und lernen Sie dann, auf welchen Designs und Ideen leistungsfähige Software beruht.

Alle Werkzeuge am Start
Ihre Entwicklungsumgebung hat mehr zu bieten, als auf den ersten Blick zu sehen ist. Lernen Sie den Debugger kennen, sorgen Sie mit Unit-Tests für Codequalität, packen Sie Ihre Programme effizient zusammen und erfahren Sie, warum manche Profis erst die Tests und dann den Code schreiben.

Fortgeschrittene Techniken
GUIs mit JavaFX, Multithreading, das Collection-Framework und Lambdas sind nur Beispiele - die Standardbibliothek und viele Profi-Techniken gehören bald zu Ihrem Repertoire.

Themen sind insbesondere:
  • Die Entwicklungsumgebung kennerlernen
  • Grundkonzepte glasklar vorgestellt
  • Sprachmittel gründlich verstehen
  • Die Standardbibliothek einsetzen
  • Mit Fehlern und Ausnahmen umgehen
  • Java-8-Features nutzen
  • Multithreading und Events einsetzen
  • In Servlettechnologie einsteigen
  • Dateien, Streams und Reader
  • Flexibel codieren mit der Reflection-API
  • Unit Tests und Test Driven Design

Kai Günster ist Softwareentwickler, Autor eines Online-Magazins und mehrerer Fachbücher. Er ist Experte für Java-Technologien in verteilten Web-Anwendungen, HTML und JavaScript. Seine Projekterfahrung reicht von E-Government über komplexe Reisereservierungssysteme bis zur IP-Telefonie. Dabei bleibt er der Java-Plattform schon seit vielen Jahren treu, lotet immer wieder gern neue Features aus und setzt HTML5 für komfortable Web-GUIs ein. Er schreibt zum Eintauchen und Mitmachen. Seine Fachbücher werden für ihre klare Sprache, ihren Unterhaltungswert und ihre kompakten, lehrreichen Beispiele geschätzt.

1. Einführung ... 19



1.1 ... Was ist Java? ... 20


1.2 ... Die Arbeitsumgebung installieren ... 26


1.3 ... Erste Schritte in Netbeans ... 28


1.4 ... Das erste Programm ... 30


1.5 ... In Algorithmen denken, in Java schreiben ... 40


1.6 ... Die Java-Klassenbibliothek ... 45


1.7 ... Dokumentieren als Gewohnheit -- Javadoc ... 48


1.8 ... JARs erstellen und ausführen ... 54


1.9 ... Mit dem Debugger arbeiten ... 59


1.10 ... Das erste eigene Projekt ... 64


1.11 ... Zusammenfassung ... 65





2. Variablen und Datentypen ... 67



2.1 ... Variablen ... 67


2.2 ... Primitivtypen ... 70


2.3 ... Objekttypen ... 84


2.4 ... Objekt-Wrapper zu Primitiven ... 89


2.5 ... Array-Typen ... 92


2.6 ... Zusammenfassung ... 94





3. Entscheidungen ... 95



3.1 ... Entweder-oder-Entscheidungen ... 95


3.2 ... Logische Verknüpfungen ... 101


3.3 ... Mehrfach verzweigen mit »switch« ... 108


3.4 ... Zusammenfassung ... 113





4. Wiederholungen ... 115



4.1 ... Bedingte Wiederholungen mit »while« ... 115


4.2 ... Abgezählte Wiederholungen -- die »for«-Schleife ... 119


4.3 ... Abbrechen und überspringen ... 121


4.4 ... Zusammenfassung ... 124





5. Klassen und Objekte ... 125



5.1 ... Klassen und Objekte ... 126


5.2 ... Access Modifier ... 128


5.3 ... Felder ... 130


5.4 ... Methoden ... 131


5.5 ... Warum Objektorientierung? ... 140


5.6 ... Konstruktoren ... 142


5.7 ... Statische Felder und Methoden ... 146


5.8 ... Unveränderliche Werte ... 149


5.9 ... Spezielle Objektmethoden ... 152


5.10 ... Zusammenfassung ... 154





6. Objektorientierung ... 155



6.1 ... Vererbung ... 156


6.2 ... Interfaces und abstrakte Datentypen ... 169


6.3 ... Übung: Objektorientiere Modellierung ... 176


6.4 ... Innere Klassen ... 177


6.5 ... Enumerationen ... 185


6.6 ... Zusammenfassung ... 187





7. Unit Testing ... 189



7.1 ... Das JUnit-Framework ... 191


7.2 ... Fortgeschrittene Unit Tests ... 197


7.3 ... Besseres Design durch Testfälle ... 203


7.4 ... Zusammenfassung ... 206





8. Die Standardbibliothek ... 207



8.1 ... Zahlen ... 207


8.2 ... Strings ... 213


8.3 ... Reguläre Ausdrücke ... 222


8.4 ... Zeit und Datum ... 229


8.5 ... Internationalisierung und Lokalisierung ... 234


8.6 ... Zusammenfassung ... 242





9. Fehler und Ausnahmen ... 243



9.1 ... Exceptions werfen und behandeln ... 243


9.2 ... Verschiedene Arten von Exceptions ... 250


9.3 ... Invarianten, Vor- und Nachbedingungen ... 255


9.4 ... Zusammenfassung ... 257





10. Arrays und Collections ... 259



10.1 ... Arrays ... 259


10.2 ... Die for-each-Schleife ... 268


10.3 ... Variable Parameterlisten ... 269


10.4 ... Collections ... 270


10.5 ... Typisierte Collections -- Generics ... 276


10.6 ... Maps ... 286


10.7 ... Zusammenfassung ... 288





11. Lambda-Ausdrücke ... 289



11.1 ... Was sind Lambda-Ausdrücke? ... 290


11.2 ... Die Stream-API ... 302


11.3 ... Un-Werte als Objekte -- »Optional« ... 319


11.4 ... Eine Warnung zum Schluss ... 322


11.5 ... Zusammenfassung ... 323





12. Dateien, Streams und Reader ... 325



12.1 ... Dateien und Verzeichnisse ... 326


12.2 ... Reader, Writer und die »anderen« Streams ... 332


12.3 ... Objekte lesen und schreiben ... 344


12.4 ... Netzwerkkommunikation ... 347


12.5 ... Zusammenfassung ... 350





13. Multithreading ... 351



13.1 ... Threads und Runnables ... 352


13.2 ... Atomare Datentypen ... 359


13.3 ... Synchronisation ... 360


13.4 ... Fortgeschrittene Koordination zwischen Threads ... 367


13.5 ... Die Zukunft -- wortwörtlich ... 374


13.6 ... Das Speichermodell von Threads ... 378


13.7 ... Zusammenfassung ... 380





14. Servlets -- Java im Web ... 381



14.1 ... Einen Servlet-Container installieren ... 382


14.2 ... Die erste Servlet-Anwendung ... 388


14.3 ... Servlets programmieren ... 399


14.4 ... Java Server Pages ... 406


14.5 ... Langlebige Daten im Servlet -- Ablage in Session und Application ... 412


14.6 ... Fortgeschrittene Servlet-Konzepte -- Listener und Initialisierung ... 414


14.7 ... Zusammenfassung ... 418





15. Datenbanken und Entitäten ... 419



15.1 ... Was ist eine Datenbank? ... 420


15.2 ... Mit einer Datenbank verbinden über die JPA ... 427


15.3 ... Anwendung und Entitäten ... 431


15.4 ... Entitäten laden ... 435


15.5 ... Entitäten löschen ... 440


15.6 ... Beziehungen zu anderen Entitäten ... 441


15.7 ... Zusammenfassung ... 448





16. GUIs mit JavaFX ... 449



16.1 ... Einführung ... 449


16.2 ... Installation ... 450


16.3 ... Architektur von JavaFX ... 450


16.4 ... GUI-Komponenten ... 453


16.5 ... Layouts ... 464


16.6 ... GUI mit Java-API -- Urlaubsverwaltung ... 474


16.7 ... Event-Handling ... 479


16.8 ... JavaFX-Properties und Binding ... 485


16.9 ... Deklarative GUIs mit FXML ... 491


16.10 ... Layout mit CSS ... 497


16.11 ... Transformationen, Animationen und Effekte ... 501


16.12 ... Zusammenfassung ... 508





17. Hinter den Kulissen ... 509



17.1 ... Klassenpfade und Class Loading ... 509


17.2 ... Garbage Collection ... 515


17.3 ... Flexibel codieren mit der Reflection-API ... 521


17.4 ... Zusammenfassung ... 527





18. Und dann? ... 529



18.1 ... Java Enterprise Edition ... 530


18.2 ... Open-Source-Software ... 534


18.3 ... Android ... 535


18.4 ... Ergänzende Technologien ... 536


18.5 ... Andere Sprachen ... 539


18.6 ... Programmieren Sie! ... 541





Anhang ... 543



A ... Java-Bibliotheken ... 545


B ... Lösungen zu den Übungsaufgaben ... 553


C ... Glossar ... 653


D ... Kommandozeilenparameter ... 667





Index ... 673

Erscheint lt. Verlag 27.1.2015
Reihe/Serie Rheinwerk Computing
Verlagsort Bonn
Sprache deutsch
Maße 168 x 240 mm
Gewicht 1364 g
Einbandart gebunden
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Schlagworte Algorithmen • Java • Java 8 (Programmiersprache); Einführung • Java FX • Java lernen • java programmieren • Java programmieren lernen • Java (Programmiersprache); Einführung • Objektorientierung • Programmieren • Sprachgrundlagen
ISBN-10 3-8362-2867-X / 383622867X
ISBN-13 978-3-8362-2867-1 / 9783836228671
Zustand Neuware
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Einführung, Ausbildung, Praxis

von Christian Ullenboom

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90