Jetzt anmelden...

Login
Passwort
Registrieren

Java Tutorial #19

Die Java Klassenbibliothek

Für einen professionellen Umgang mit Java reicht das Programmieren eigener Klassen nicht. Ein guter Java-Programmierer ist nämlich in der Java-Bibliothek zuhause und weiß, wo er welche Klassen und Methoden für welchen Zweck finden kann.

Kommentare [0]

Stefan 01.08.2019

Infos zum Artikel

Kategorie Java
Autor Stefan
Datum 01.08.2019

Thema in Kurzform

// Einzelne Klassen importieren
import java.util.ArrayList;
import java.time.LocalDate;
// Gesamtes Paket importieren
import java.util.*;
  • Alle Klassen des Pakets java.lang werden automatisch importiert.

Die Java Klassenbibliothek kennenlernen

Eine der größten Stärken von Java ist die Klassenbibliothek, die aus mehreren tausend Klassen besteht. Das Gute daran ist, dass wir all diese Klassen ganz einfach für unsere eigenen Programme einsetzen können.

Die Java-Bibliothek bietet für viele Probleme genau die richtige Klasse mitsamt Methoden an. Zwar werden wir die meisten Klassen aus der Bibliothek vermutlich nie benötigen, andere jedoch werden unverzichtbar für unserer Programme.

Wir haben übrigens schon regelmäßig Klassen der Java-Bibliothek genutzt, ohne es zu wissen: Die Klasse String gehört ebenso dazu wie die Klasse System mit ihrer System.out.println() Methode. Erinnern Sie sich außerdem an das Kapitel zu Objektsammlungen? Hier haben wir mit der Bibliotheksklasse ArrayList gearbeitet.

Gäbe es die Java-Bibliothek nicht, müssten wir die entsprechenden Klassen selbst schreiben, was mit einem erheblichen bzw. unmöglichen Aufwand verbunden wäre.

Das ist das schöne an Java: Man muss nicht alles selbst programmieren, sondern kann auf die Arbeit anderer zurückgreifen.

Die Java-Standardbibliothek

Prinzipiell kann jeder eine Java-Klasse schreiben und ein anderer kann sie in sein Programm einbinden. Das ist in Programmier-Teams Gang und Gäbe (Arbeitsteilung!).

Wir beschäftigen uns in diesem Kapitel aber mit den offiziellen Klassen, wie sie in der Java Standardbibliothek gesammelt sind und ganz einfach importiert werden können.

Eine umfassende Dokumentation über alle Klassen der Standardbibliothek sind online abrufbar. Für die Klasse String sieht das so aus (Klick aufs Bild):

Java API

Die Klassen sind thematisch und konzeptionell in einer komplexen Paket-Hierarchie sortiert.

Wie gesagt: Sie werden nur einen Bruchteil davon einsetzen und brauchen daher nicht vor der Masse zu erschrecken. Aber:

  • Ein guter Java-Programmierer kann zielgerichtet mit der Java-Bibliothek arbeiten und weiß, welche Klassen er auswählen muss und wo er diese findet.

Der Umgang mit der Java-Bibliothek braucht Erfahrung. Nach einiger Zeit werden sie ein Feingefühl dafür bekommen, wo eine bestimmte Klasse zu finden ist.

Folgende Pakete der Java Standardbibliothek sollten Sie auf jeden Fall recht früh schon kennen:

Paket Enthaltene Klassen
java.lang Dieses Paket enthält Klassen, die am meisten benötigt werden, wie etwa String, Math für mathemische Berechnungen oder die Wrapper-Klassen.
java.util Das Paket java.util beinhaltet nützliche Klassen, um einen Zufallsgenerator (Random) oder eine Benutzereingabe via. Konsole (Scanner) zu programmieren. Sehr wichtig sind außerdem die Listenklassen für Objektsammlungen (z.B. ArrayList).
java.lang.Exception Hier enthaltene Klassen dienen dem Exception Handling, d.h. Programmfehler an andere Programmebenen zur Weiterbehandlung weiterzureichen
javax.swing Klassen, die hierzu gehören, werden für das Programmieren grafischer Benutzeroberflächen (GUI) benötigt.

Klassendokumentation lesen

Als Java-Programmierer sollten Sie die Dokumentation der einzelnen Bibliotheksklassen verstehen können. Jede Klasse wird mit folgenden Teilen beschrieben:

  • Name der Klasse
  • Eine allgemeine Beschreibung der Klasse
  • Field Summary: Liste der Felder
  • Constructor Summary: Auflistung der Konstruktoren
  • Method Summary: Alle Methoden der Klasse inkl. Kurzbeschreibung
  • Details: Ausführliche Beschreibung und Anmerkungen zu Feldern, Konstruktoren und Methoden der Klasse

import von Klassen

Um Klassen der Java-Standardbibliothek einzusetzen, müssen wir sie zuerst in unser Programm importieren. Dies funktioniert mit der import-Anweisung. Angenommen, wir möchten beispielsweise die Klasse Random aus dem Paket java.util importieren, um einen Zufallsgenerator zu erzeugen, dann sieht die Syntax dafür so aus:

Java import

Die import-Anweisung muss immer unmittelbar vor der Klassendefinition stehen:

package paket1;
import java.util.Random;
public class Cyborg{
    // Code unserer Klasse
}

Jetzt können wir in unserer Klasse Cyborg neue Random-Objekte erzeugen und die entsprechenden Methoden ausführen:

public int getZufall(){
    Random r = new Random();
    return r.nextInt(10); // liefere Zufallszahl zwischen 0 und 9
}

Mehrere Klassen importieren

Wir können natürlich auch mehrere Klassen importierten. Wir brauchen dann für jede einzelne Klasse eine eigene import-Anweisung:

import java.util.ArrayList;
import java.util.Random;

Wollen wir das gesamte Paket java.util importieren, können wir das mit einer kleinen Abkürzung tun:

import java.util.*;

Mit der Wildcard * ist es jetzt möglich, alle anderen Klassen des Pakets java.util einzusetzen.

Der "Universal-Import" mit * geht nicht auf Kosten der Performance, da der Compiler herausfindet, welche Klassen wirklich eingesetzt werden und nur diese tatsächlich importiert.

Welchen Weg Sie wählen (Import einzelner Klassen oder alle Klassen des Pakets), bleibt Geschmackssache. Die Klassen einzeln zu importieren macht den Code aber übersichtlicher und nachvollziehbarer.

java.lang

Die Klassen des Pakets java.lang werden so häufig gebraucht, dass wir diese nicht explizit importieren müssen. Der Compiler übernimmt das automatisch für uns.

Zwar wäre eine Anweisung wie import.java.lang.System möglich. Da es aber redundant (überflüssig) ist, sollten wir sie unterlassen.

Übungen

einfach

Ist der folgende Code korrekt?
import java.lang.*;
package meinPaket;
public class MeineKlasse{
        //
}
Lösung ein-/ausblenden

mittel

Erstellen Sie eine String-Variable mit "Kahn".

Gehen Sie in der Java Dokumentation zur Klasse String.

Suchen Sie die Methode contains. Prüfen Sie nun, ob unser String die Buchstabenfolge Ka enthält. Geben Sie das Ergebnis am Bildschirm aus.

Lösung ein-/ausblenden

schwer

Es soll in einer Methode eine ArrayList mit 5 beliebigen String-Elementen erstellt werden.

Anschließend soll ein zufälliges Element aus der ArrayList am Bildschirm ausgegeben werden.

Lösung ein-/ausblenden

Kommentar schreiben

Nur angemeldete und aktivierte Benutzer können kommentieren.

Alle Kommentare

Es gibt bislang noch keine Kommentare zu diesem Thema.

Pass-by-value in Java

wie genau der Vorgang der Parameterübergabe bei Methoden abläuft, klären wir hier.

Objektinteraktion

Wie interagieren Objekte in einem Programm miteinander?

toString() Methode

Lernen Sie hier, wie Sie die toString() Methode korrekt einsetzen

FALCONBYTE.NET

Handmade with 🖤️

© 2018, 2019 Stefan E. Heller

Impressum | Datenschutz

facebook programmieren lernen twitter programmieren lernen youtube programmieren lernen