Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Aus dem Lektorat Inhaltsverzeichnis   Vorwort 1   Hello World!
1.1   Einführung 1.2   Java installieren
Welche Versionsnummer? Alternative JDKs
1.3   IntelliJ IDEA
IntelliJ installieren »Hello World!« in IntelliJ Endlich Code Beispieldateien öffnen
1.4   Der Hello-World-Code 1.5   Alternativen zu IntelliJ
Visual Studio Code Editoren ohne Java-Unterstützung
2   Java-Crashkurs
2.1   Die Idee des objektorientierten Programmierens
Methoden helfen, Teilaufgaben zu lösen Klassen bringen Daten und Methoden zusammen Objekte sind konkrete Ausformungen von Klassen Begriffe
2.2   Java-Syntax
Ärger mit Strichpunkten Regeln zur Benennung von Variablen, Klassen etc. Java-Schlüsselwörter Kommentare im Java-Code Die Java-Standardbibliothek Weniger Tippaufwand mit »import« »import« muss vor der Klassendefinition stehen!
2.3   Wiederholungsfragen
3   Variablenverwaltung
3.1   Variablen
Einführungsbeispiel Variablen deklarieren, initialisieren und verwenden Variablendeklaration ohne Typangabe (»var«) Einschränkungen für »var«
3.2   Elementare Datentypen
Ganze Zahlen Fließkommazahlen Rechnen mit »double«-Zahlen Boolesche Werte Zufallszahlen Typumwandlung (Casting) Modifizierer für die Variablendeklaration
3.3   Literale
Literale für ganze Zahlen Literale für Fließkommazahlen
3.4   Variablen einlesen und ausgeben
Datenausgabe Dateneingabe Beispiel
3.5   Variablen im größeren Java-Kontext
Gültigkeitsebenen Variablen für Objekte Wrapper-Klassen für elementare Datentypen
3.6   Konstanten und Enums
Konstantenaufzählungen (Enums)
3.7   Wiederholungsfragen und Übungen
4   Operatoren
4.1   Überblick 4.2   Details und Sonderfälle
Zuweisungen Mathematische Operatoren Inkrement und Dekrement Vergleiche Boolesche Ausdrücke (verknüpfte Bedingungen) Rechnen mit Bits Sonstige Operatoren
4.3   Wiederholungsfragen
5   Verzweigungen und Schleifen
5.1   »if«-Verzweigungen
Lieber ein Klammernpaar zu viel als eines zu wenig! Klare Logik durch richtiges Einrücken Beispiel: Schaltjahrtest
5.2   »if«-Kurzschreibweise (ternärer Operator) 5.3   »switch«-Verzweigungen
Beispiel: Tage pro Monat Alternative »switch«-Syntax seit Java 12
5.4   »for«-Schleifen
Achtung, Falle! Variablendeklaration innerhalb der Schleife Beispiele »for«-Schleifen für Fließkommazahlen Verschachtelte Schleifen
5.5   »for-each«-Schleifen
»for« versus »for-each«
5.6   »while«- und »do-while«-Schleifen
»while«-Schleifen »do-while«-Schleifen
5.7   »break« und »continue«
break continue »break« und »continue« in verschachtelten Schleifen Endlosschleifen
5.8   Wiederholungsfragen und Übungen
6   Arrays
6.1   Syntax
Arrays initialisieren Deklaration und Initialisierung mit »var« Zugriff auf Array-Elemente Mehrdimensionale Arrays Nichtrechteckige Arrays Interna
6.2   Mit Arrays arbeiten
Arrays duplizieren Beispiel 1: Array initialisieren Beispiel 2: Minimum, Maximum und Mittelwert
6.3   Wiederholungsfragen
7   Zeichenketten
7.1   Der Datentyp »char«
Die »Character«-Klasse und ihre Methoden
7.2   Die »String«-Klasse
Mehrzeilige Zeichenketten »String«-Eigenheiten Zeichenketten vergleichen Zeichenketten korrekt ordnen und sortieren »String«-Methoden Die »join«-Methode Die Methoden »trim«, »strip« und »isBlank«
7.3   Formatierung und Konvertierung
Formatierung Konvertierung von Zeichenketten in Zahlen Lokalisierung von Ein- und Ausgabe Umwandlung zwischen char-Arrays und Zeichenketten
7.4   Die »StringBuilder«-Klasse 7.5   Beispiele
Groß- und Kleinbuchstaben zählen Pfad und Dateiname trennen Palindrom-Test
7.6   Wiederholungsfragen und Übungen
8   Methoden
8.1   Einführung
Syntaxregeln Statisch oder nichtstatisch?
8.2   Parameterliste
Parameter verändern Finale Parameter Overloading Variable Parameterzahl
8.3   Rückgabewert und »return«
Klarerer Code durch »return«
8.4   Rekursion
Fakultät rekursiv berechnen Der Stack
8.5   Tipps zum richtigen Einsatz von Methoden
Design von Methoden Wann organisieren Sie Ihren Code in Methoden?
8.6   Beispiele
Array-Methoden: Minimum und Maximum ermitteln Wir spielen Lotto Array-Suche CSS-Farbcodes validieren Freie Plätze im Kino suchen
8.7   Wiederholungsfragen und Übungen
9   Datum und Uhrzeit
9.1   Datum und Zeit seit Java 8
»Machine Time Line« versus »Human Time Line« Überblick über die Klassen und Methoden Datum ermitteln, anzeigen und formatieren Schaltjahr-spezifische Daten ermitteln Uhrzeit ermitteln und anzeigen Daten und Zeiten einlesen (»parse«) Daten und Zeiten festlegen (»of«) Zeitspannen ermitteln und auswerten Rechnen mit Daten und Zeiten Rechenzeit messen (Instant und Duration)
9.2   Veraltete Datums- und Zeitklassen (Date, Calendar)
Die »Date«-Klasse Formatierung mit »format« bzw. »printf« Formatierung mit der »SimpleDateFormat«-Klasse Die »Calendar«-Klasse Umwandlung von »Date« zu »LocalDate«
9.3   Wiederholungsfragen und Übungen
10   Exceptions
10.1   Exception-Klassen
Die »Throwable«-Klasse Die »Error«-Klassen Die »RuntimeException«-Klassen Gewöhnliche Exceptions
10.2   try-catch
»try-catch« für Ressourcen Exception-Weitergabe
10.3   Fehleranfällige Methoden deklarieren (»throws«)
Selbst absichern oder die Absicherung delegieren?
10.4   Selbst Exceptions auslösen (»throw«) 10.5   Beispiel 10.6   Wiederholungsfragen und Übungen
11   Klassen und Records
11.1   Eigene Klassen entwickeln
Korrekte Platzierung von Klassen im Paket Top-Level-Klassen Aufbau von Klassen Beispiel: Rechteck-Klasse Gültigkeitsebenen (»public«, »private« und »protected«) Klassenvariablen und statische Methoden
11.2   Der Konstruktor
this Destruktor und »close« Beispiel: Rechteck-Klasse mit Konstruktor
11.3   »get«- und »set«-Methoden (Getter/Setter)
Beispiel: Rechteck-Klasse mit Getter/Setter
11.4   Records
Record-Syntax Records als »Data Transfer Objects« Records versus Klassen
11.5   UML-Diagramme 11.6   Beispiel: Bücher und Kapitel
Chapter-Klasse Book-Klasse Testcode
11.7   Wiederholungsfragen und Übungen
12   Listen, Sets und Maps
12.1   Generische Klassen anwenden
Wrapper-Klassen für elementare Datentypen
12.2   Listen
Collections-Methoden Die »LinkedList«-Klasse
12.3   Sets
Lottozahlen
12.4   Maps 12.5   Beispiel: Polygone
Klasse »Point« Klasse »Polygon« Testcode
12.6   Beispiel: Schachfigur Springer
Klasse »Position« Klasse »Knight«
12.7   Beispiel: Mitarbeiter verwalten
Rekursive Auswertung hierarchischer Strukturen
12.8   Wiederholungsfragen und Übungen
13   Vererbung
13.1   Vererbung
Methoden überschreiben super Konstruktor Gültigkeitsmodifizierer
13.2   Beispiel: Klassen für Fahrräder
Basisklasse »Bicycle« Erweiterte Klasse »MountainBike« Erweiterte Klasse »EBike«
13.3   Finale und abstrakte Klassen
Mehrstufige Vererbung und Mehrfachvererbung Instanzvariablen überschreiben Finale Klassen und Methoden Abstrakte Klassen Generalisierung Upcasts und Downcasts Polymorphie
13.4   Die »Object«-Klasse
Die Methode »clone« Die Methode »equals« Die Methode »getClass« Die Methode »hashCode« Die Methode »toString« Beispiel: »equals« und »hashCode« für »Rectangle«
13.5   Beispiel: Schachfiguren
Die abstrakte Klasse »Piece« Die Klassen »Knight«, »Bishop« und »Rook« Anwendung der Klassen
13.6   Wiederholungsfragen und Übungen
14   Schnittstellen
14.1   »interface« und »implements«
Wichtige Schnittstellen in der Java-Standardbibliothek Schnittstellen implementieren (»implements«) Generalisierung Abstrakte Klassen versus Schnittstellen
14.2   Beispiel: Geometrische Figuren
Die Klassen »Circle« und »Rectangle« Anwendung Codeoptimierung
14.3   Wiederholungsfragen und Übungen
15   Geschachtelte und anonyme Klassen
15.1   Geschachtelte Klassen
Geschachtelte Schnittstellen und Enums
15.2   Anonyme Klassen
Beispiel: »FilenameFilter« Variante 1: Geschachtelte Klasse Variante 2: Anonyme Klasse Variante 3: Lambda-Ausdruck Syntax Variable Capture Interna
15.3   Statische geschachtelte Klassen
16   Generische Klassen und Methoden
16.1   Einführung
Hello Generics World!
16.2   Deklaration generischer Klassen und Schnittstellen
Typeinschränkungen Generische Schnittstellen und Vererbung
16.3   Deklaration generischer Methoden 16.4   Wildcards
Wildcard-Parameter Wildcards mit Regeln Upper-Bounded Wildcards Lower-Bounded Wildcards Arrays
16.5   Wiederholungsfragen und Übungen
17   Lambda-Ausdrücke
17.1   Hello Lambda World!
Ein Blick hinter die Kulissen
17.2   Lambda-Syntax
»this« und »super« Referenzen auf Methoden Beispiel für Referenzen auf Methoden
17.3   Generische Lambda-Schnittstellen
Beispiel: Datenselektion mit der »Predicate«-Schnittstelle
17.4   Funktionale Programmierung mit Streams
Streams ausprobieren Probleme mit Variablen, die nicht »effectively final« sind
17.5   Beispiel: Mitarbeiter sortieren und auswählen
Mitarbeiter selektieren
17.6   Wiederholungsfragen
18   Dateien und Verzeichnisse
18.1   Klassen- und Schnittstellenüberblick
Fehlerabsicherung Ressourcen schließen
18.2   Dateien und Verzeichnisse ergründen
Besondere Verzeichnisse Die »Path«-Schnittstelle Testen, ob ein Verzeichnis bzw. eine Datei existiert Eigenschaften einer Datei ermitteln Liste der Dateien in einem Verzeichnis erzeugen
18.3   Dateien und Verzeichnisse bearbeiten
Beispiel
18.4   Textdateien lesen und schreiben
Textdateien schreiben Textdateien auslesen
18.5   Beispiel: Evaluierungsdaten auswerten
Klasse »EvaluationRecord« Statistische Auswertung der Evaluierung
18.6   Wiederholungsaufgaben und Übungen
19   JavaFX
19.1   Hello JavaFX!
Projektaufbau vereinfachen Ein erster Blick hinter die Kulissen Der Scene Graph
19.2   Arbeiten mit Steuerelementen
Der Scene Graph des Beispielprogramms Steuerelemente und Container erzeugen Ereignisse
19.3   Grafikprogrammierung
Einführungsbeispiel Den Zufall zeichnen lassen Lissajous-Figuren zeichnen
19.4   Wiederholungsaufgaben und Übungen
20   Java-Interna und -Bibliotheken
20.1   Java-Compiler und -Interpreter
Windows-Path-Konfiguration Nochmals »Hello World!« Interna: Compiler, Interpreter und Bytecode
20.2   Der »args«-Parameter
Beispiel: Passwortgenerator Programm kompilieren und ausführen
20.3   Die Java-Shell
Fortgeschrittene Funktionen
20.4   import
Die »import«-Syntax Standard-Import für »java.lang« Statische Importe
20.5   Pakete 20.6   Bibliotheken
Fertige Java-Bibliotheken nutzen IntelliJ und Gradle
20.7   Module (»Jigsaw«)
Beispiel Welche Module sind erforderlich?
20.8   Wiederholungsfragen
A   Crashkurs IntelliJ IDEA
A.1   Benutzeroberfläche A.2   Projekte A.3   Einstellungen
B   Lösungen
B.1   Kapitel 2, »Java-Crashkurs« B.2   Kapitel 3, »Variablenverwaltung« B.3   Kapitel 4, »Operatoren« B.4   Kapitel 5, »Verzweigungen und Schleifen« B.5   Kapitel 6, »Arrays« B.6   Kapitel 7, »Zeichenketten« B.7   Kapitel 8, »Methoden« B.8   Kapitel 9, »Datum und Uhrzeit« B.9   Kapitel 10, »Exceptions« B.10   Kapitel 11, »Klassen« B.11   Kapitel 12, »Listen, Maps und Sets« B.12   Kapitel 13, »Vererbung« B.13   Kapitel 14, »Schnittstellen« B.14   Kapitel 16, »Generische Klassen und Methoden« B.15   Kapitel 17, »Lambda-Ausdrücke« B.16   Kapitel 18, »Dateien und Verzeichnisse« B.17   Kapitel 19, »JavaFX« B.18   Kapitel 19, »Pakete, Bibliotheken und Module«
Stichwortverzeichnis Rechtliche Hinweise Über den Autor
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion