Die Java API
Die Java API (Java Application Programming Interface) stellt eine umfangreiche Bibliothek wichtiger Java-Klassen dar. Neben dem eigentlichen Quellcode stellt die Java API auch detaillierte Informationen zu den Klassen (Paketzugehörigkeit, Attribute, Methoden,…) als Javadoc bereit. Entwicklungsumgebungen wie Eclipse bieten meist eine vollständige Integration der Java API an.
Wichtige Klassen und Schnittstellen der Java API
Thema | Klassen |
---|---|
Assoziativspeicher (Maps) | Entry<K, V> , HashMap<K, V> , Map<K, V> |
Aufzählungen (Enumerations) | Enumeration<E> |
Ausnahmen (Exceptions) | ArrayIndexOutOfBoundsException , Exception , NullPointerException , RunTimeException |
Dateien und Verzeichnisse | File , Scanner |
Datenklassen (Records) | Record |
Datenströme | BufferedInputStream , BufferedOutputStream , BufferedReader , BufferedWriter , FileInputStream , FileOutputStream , FileReader , FileWriter , ObjectInputStream , ObjectOutputStream , Serializable , System |
Datums- und Zeitangaben | LocalDate , LocalDateTime , LocalTime |
Die Java Stream API | BiConsumer , Collectors , Comparable<T> , Comparator<T> , Consumer<T> , DoubleConsumer , DoubleStream , Executable , Function<T, R> , IntStream , Predicate<T> , Stream<T> , ToDoubleFunction<T, R> , ToIntFunction<T, R> |
Die Mutter aller Klassen | Object |
Java Collections Framework | ArrayList<E> , Arrays , HashSet<E> , LinkedList<E> , List<E> , Queue<E> , Set<E> |
Komparatoren | Comparable<T> , Comparator<T> , Collections |
Konsolenanwendungen | PrintStream , Scanner , System |
Listen | ArrayList<E> , Arrays , LinkedList<E> , List<E> |
Mathematische Berechnungen | Math |
Optionals | Optional<T> , OptionalDouble |
Pseudozufallszahlen | Random |
Wrapper-Klassen | Boolean , Double , Integer |
Zeichenketten (Strings) | String |
Die Javadoc
Die Javadoc ist ein Werkzeug zur Software-Dokumentation und erstellt aus den öffentlichen Deklarationen von Klassen, Schnittstellen, Attributen und Methoden sowie eventuell vorhandenen Dokumentationskommentaren HTML-Seiten. Um die Navigation innerhalb der Dokumentationsdateien zu erleichtern, werden zusätzlich verschiedene Index- und Hilfsdateien generiert. HTML-Tags in den Dokumentationskommentaren ermöglichen die Formatierung der Dokumentation.
/**
* Computer
*
* @author Hans Maier
* @version 1.0
*
*/
public class Computer {
...
/**
* Central Processing Unit
*/
private CPU cpu;
/**
* Returns the Central Processing Unit (CPU) of this Computer
*
* @return the Central Processing Unit
*/
public CPU getCpu() {
return cpu;
}
/**
* Sets the Central Processing Unit of this Computer with the incoming data
*
* @param powerInGHz Power of the CPU in GHz
* @param numberOfCores Number of Cores
*/
public void setCpu(double powerInGHz, int numberOfCores) {
cpu = new CPU(powerInGHz, numberOfCores);
}
...
}