Grundlagen der Java-Programmierung
1. Einführung
Strukturierte Sprachen basieren auf Kontrollstrukturen und Code-Blöcken, die unabhängige Subroutinen unterstützen, inklusive Rekursion und lokaler Variablen. Die objektorientierte Programmierung (OOP) greift die besten Ideen der strukturierten Programmierung auf und kombiniert sie mit neuen Konzepten der Organisation.
Bei der objektorientierten Programmierung wird ein Programm in verwandte Gruppen unterteilt. Jede Gruppe bildet ein in sich geschlossenes Objekt mit eigenen Instruktionen und Daten. Die drei Grundpfeiler objektorientierter Sprachen sind Kapselung, Vererbung und Polymorphismus.
Kapselung
Die Kapselung fungiert wie eine schützende Hülle um Code und Daten. Sie legt das Verhalten fest und verhindert, dass externer Code willkürlich auf die Daten zugreift. Der Vorteil ist, dass Objekte unabhängig von Implementierungsdetails verwendet werden können. In Java ist die Grundlage der Kapselung die Klasse, die Methoden definiert, welche auf den Daten operieren.
Vererbung
Objekte können hierarchisch aufeinander bezogen werden. Dabei werden allgemeine Attribute in einer Oberklasse definiert, von der andere Klassen (Unterklassen) mit spezifischen Attributen abgeleitet werden.
Polymorphismus
Polymorphismus bedeutet, dass eine Methode mehrere Implementierungen haben kann, die je nach Typ des übergebenen Objekts ausgewählt werden.
2. Erstes Programm
Java-Quellcodedateien erhalten die Endung .java. Nach dem Kompilieren entstehen Dateien mit der Endung .class. Der Dateiname muss dem Namen der Klasse entsprechen, die die Hauptfunktion (main) enthält.
public class HelloWorld {
public static void main(String[] args) {
System.out.println("HELLO WORLD");
}
}Zum Kompilieren wird der Compiler javac verwendet, zum Ausführen der Befehl java:
javac HelloWorld.javajava HelloWorld
3. Variablen
Variablen sind die Grundeinheit der Datenspeicherung. Sie bestehen aus einem Bezeichner, einem Typ und einem Gültigkeitsbereich. Die Syntax lautet: Typ Bezeichner = Wert;
Datentypen
- byte: 8 Bit
- short: 16 Bit
- int: 32 Bit
- long: 64 Bit
- float: 32 Bit
- double: 64 Bit
- char: 16 Bit
- boolean: true oder false
4. Matrizen (Arrays)
Arrays sind Gruppen von Variablen gleichen Typs. Der Zugriff erfolgt über einen Index.
Eindimensionale Arrays
Typ[] name = new Typ[Anzahl];
Zweidimensionale Arrays
Typ[][] name = new Typ[Zeilen][Spalten];
5. Operatoren
- Arithmetisch: +, -, *, /, % (Restwert)
- Relationale: ==, !=, >, <, >=, <=
- Logische: && (UND), || (ODER), ! (NICHT)
6. Dateneingabe
Werte können über das Argument-Array der main-Funktion beim Programmstart über die Konsole übergeben werden. Diese Werte sind immer vom Typ String und müssen bei Bedarf in numerische Typen konvertiert werden.
7. Datenkonvertierung
Java bietet verschiedene Möglichkeiten zur Typumwandlung, etwa mittels Character.digit(), String.valueOf() oder durch Wrapper-Klassen wie Integer und Double.