2.6 KiB
Module
<<<<<<< HEAD Grundlegendes Konzept in der Programmierung zur Organisation von Programmcode. Module kapseln Implementationen und exportieren eine Schnittstelle mit Operationen, Typen und Konstanten. Dies kann explizit durch die Java 9 Modules geschehen oder implizit durch Zugriffsmodifikatoren.
Grundlegendes Konzept in der Programmierung zur Organisation von Programmcode.
Module kapseln Implementationen und exportieren eine Schnittstelle mit Operationen, Typen und Konstanten. Dies kann explizit durch die Java 9 Modules geschehen oder implizit durch Zugriffsmodifikatoren.
Geschachtelte Klassen
Erlaubt das Verstecken von Hilfsklassen.
class Dreieck {
private Koordinate _a;
private Koordinate _b;
private Koordinate _c;
private class Koordinate
{
...
}
}
Pakete
Ermöglichen Namensräume von zusammengehörigen Klassen. Klassen und Interfaces sind nur sichtbar wenn sie mit dem Schlüsselwort public
deklariert wurden.
// Dreieck.java
package formen;
public class Dreieck {
private Koordinate _a;
private Koordinate _b;
private Koordinate _c;
//...
}
// Koordinate.java
package formen;
class Koordinate
{
//...
}
Imports
Möchte man Klassen und Interfaces aus einem anderen Paket nutzen dann müssen diese importiert werden. Um eine Grundfunktionalität von Java zu gewährleisten wird das Paket java.lang
immer importiert.
import java.util.List; // Nur List
import java.util.*; // Alle Klassen und Interfaces aus java.util
import static org.junit.Assert.*; // Statischer Import der Asserts
import java.lang.*; // Default Import der immer gemacht wird
Sichtbarkeiten
Sichtbarkeiten von Methoden, Konstruktoren und Feldern:
- public: Sichtbar innerhalb und außerhalb des eigenen Pakets
- protected: Sichtbar innerhalb des Pakets und für erbende Klassen
- package-private: Sichtbar innerhalb des Pakets
- private: Nur sichtbar innerhalb der Klasse
Übung
-
Durch welches Schlüsselwort wird der Modifikator
package-private
genutzt?- Durch die Verwendung von keinem Schlüsselwort als Modifikator
-
Wie sollten Pakete benannt werden?
- Umgedrehte Domain:
de.henriburau.meineKlassen
- Umgedrehte Domain: