Notizen im Kopf organisieren (Java - Instance Edition)
Meine Java-Umgebung
static
statische
Felder können verwendet werden, ohne eine Instanz zu erstellen
- Nach Instanziierung mit
class name.field name
oder instance name.field name
verwenden
- Sie können nicht über statische Methoden auf nicht statische Felder oder Methoden zugreifen (auf statische Felder oder Methoden kann nur über statische Methoden zugegriffen werden).
- Sie können über nicht statische Methoden auf statische Felder und Methoden zugreifen
Rückgabewert der Methode
- Der Rückgabewert der Methode muss vom gleichen Typ wie der Rückgabewert oder von einem kompatiblen Typ sein.
Argument variabler Länge
- Ein Argument, dessen Anzahl von Argumenten frei geändert werden kann. Ersetzt durch ein Array durch die JVM.
- Deklarieren Sie den Argumenttyp mit drei Punkten "..." unmittelbar danach.
public static void main(String... args) {
//wird bearbeitet
}
- Das Argument variabler Länge muss das letzte Argument sein.
public void method(String value, String... args) { } // OK
public void method(String... args, String value) { } // NG
Methodenüberladung
- Gleicher Methodenname, unterschiedliche Argumente (Anzahl, Typ, Reihenfolge der Argumente)
Konstrukteur
- Machen Sie den Methodennamen mit dem Klassennamen identisch
- Rückgabewert kann nicht beschrieben werden
- Kann nur aufgerufen werden, wenn "new" fertig ist, kann nicht aufgerufen werden
- Jeder Zugriffsmodifikator ist in Ordnung
Konstruktor und Initialisierer {}
Der Initialisierer {}
wird direkt unter dem Klassenblock beschrieben. Wird ausgeführt, bevor der Konstruktor ausgeführt wird.
public class Test {
{
//Initialisierungsprozess
}
}
Es gibt auch einen statischen Initialisierer. Wird ausgeführt, wenn die Klasse geladen wird.
public class Test {
static {
//Initialisierungsprozess
}
}
- Der Standardkonstruktor wird hinzugefügt, wenn kein Konstruktor definiert ist.
- Verwenden Sie
this (...)
, wenn Sie einen anderen überladenen Konstruktor von einem Konstruktor aus aufrufen. Wenn Sie ihn jedoch verwenden, müssen Sie ihn ganz am Anfang des Prozesses schreiben.
Qualifikation
- public: von allen Klassen zugänglich
- protected: Zugriff über dasselbe Paket und geerbte Unterklassen
- (Keine): Zugriff über Klassen im selben Paket
- privat: Nur innerhalb der Klasse zugänglich
Methodenargumente
- Wenn im Argument der Methode ein primitiver Typ angegeben ist, wird eine Kopie an die Methode übergeben (Änderungen an der Methode wirken sich nicht auf den Wert des Aufrufers aus).
- Wenn der Objekttyp als Argument der Methode angegeben wird, wird die Referenz (Verknüpfung) der Instanz an die Methode übergeben. (Wenn sich der Wert in der Methode ändert, ändert sich auch der Wert des Aufrufers.)