Java-Klasse oder -Typ erstellen

Mit dem Dialogfeld Neue Klasse erstellen und Dateivorlagen können Sie in Android Studio schnell die folgenden neuen Klassen und Typen erstellen:

  • Java-Klassen
  • Enumerations- und Singleton-Klassen
  • Schnittstellen- und Annotationstypen

Nachdem Sie die Felder im Dialogfeld Neue Klasse erstellen ausgefüllt und auf OK geklickt haben, erstellt Android Studio eine .java Datei mit Skelettcode, einschließlich einer Paketdeklaration, aller erforderlichen Importe, eines Headers und einer Klassen- oder Typdeklaration. Anschließend können Sie dieser Datei Ihren Code hinzufügen.

In Dateivorlagen wird festgelegt, wie Android Studio den Skelettcode generiert. Sie können die in Android Studio bereitgestellten Dateivorlagen unverändert verwenden oder sie an Ihren Entwicklungsprozess anpassen.

Dateivorlagen ansehen und anpassen

Android Studio bietet Dateivorlagen, die festlegen, wie neue Java-Klassen und ‑Typen mit dem Dialogfeld Neue Klasse erstellen erstellt werden. Sie können diese Vorlagen anpassen.

Das Dialogfeld „Neuen Kurs erstellen“

Abbildung 1. Das Dialogfeld **Neue Klasse erstellen**.

Die Android Studio-Dateivorlagen enthalten Velocity Template Language (VTL)-Code und Variablen, die diese zusätzlichen Optionen verarbeiten. Im Dialogfeld Neue Klasse erstellen werden die Dateivorlagen AnnotationType, Class, Enum, Interface und Singleton verwendet.

So rufen Sie die Vorlagen auf, suchen nach Anpassungen und ändern die Vorlagen: Gehen Sie wie folgt vor:

  1. Führen Sie einen der folgenden Schritte aus:

    • Wählen Sie unter Windows oder Linux Datei > Einstellungen > Editor > Datei- und Code Vorlagen > Dateien aus.
    • Wählen Sie unter macOS Android Studio > Einstellungen > Editor > Datei- und Code Vorlagen > Dateien aus.

    In der Vorlagenliste, interne Vorlagennamen sind fett formatiert. Benutzerdefinierte Vorlagennamen werden in einer Hervorhebungsfarbe wie Blau angezeigt.

  2. Passen Sie die Dateivorlagen nach Bedarf an.

    Wenn Sie die Felder im Dialogfeld Neue Klasse erstellen verwenden möchten, müssen Ihre Änderungen dem Android Studio-Dateivorlagencode entsprechen.

Weitere Informationen zu Dateivorlagen, einschließlich VTL, finden Sie unter Datei und Codevorlagen und Dialogfeld „Datei und Codevorlagen“.

Java-Klasse oder ‑Typ erstellen

Mit Android Studio können Sie neue Java-Klassen, Enumerations- und Singleton Klassen sowie Schnittstellen- und Annotationstypen basierend auf Dateivorlagen erstellen.

So erstellen Sie eine neue Java-Klasse oder einen neuen Java-Typ:

  1. Klicken Sie im Fenster Projekt mit der rechten Maustaste auf eine Java-Datei oder einen Java-Ordner, und wählen Sie Neu > Java-Klasse aus.
  2. Alternativ können Sie im Fenster Projekt eine Java-Datei oder einen Java-Ordner auswählen oder in einer Java-Datei im Code-Editor klicken. Wählen Sie dann Datei > Neu > Java-Klasse aus.

    Das ausgewählte Element bestimmt das Standardpaket für die neue Klasse oder den neuen Typ.

  3. Füllen Sie im Dialogfeld Neue Klasse erstellen die Felder aus:
    • Name : Der Name der neuen Klasse oder des neuen Typs. Er muss den Java-Namensanforderungen entsprechen. Geben Sie keine Dateinamenerweiterung ein.
    • Art : Wählen Sie die Kategorie der Klasse oder des Typs aus.
    • Superklasse : Die Klasse, von der Ihre neue Klasse erbt. Sie können den Paket- und Klassennamen oder nur den Klassennamen eingeben und dann in der Drop-down-Liste auf ein Element doppelklicken, um es automatisch zu vervollständigen.
    • Schnittstellen : Eine oder mehrere Schnittstellen, die von der neuen Klasse oder dem Typ implementiert werden. Trennen Sie mehrere Schnittstellen durch ein Komma, gefolgt von einem optionalen Leerzeichen. Sie können den Paket- und Schnittstellennamen oder nur den Schnittstellennamen eingeben und dann in der Drop-down-Liste auf ein Element doppelklicken, um es automatisch zu vervollständigen.
    • Die automatische Vervollständigung funktioniert nur für den ersten Schnittstellennamen. Obwohl das Komma und der folgende Schnittstellenname möglicherweise einen Tooltip-Fehler verursachen, können Sie den Fehler ignorieren, da er sich nicht auf den generierten Code auswirkt.

    • Paket : Das Paket, in dem sich die Klasse oder der Typ befindet. Der Standardwert wird automatisch im Feld angezeigt. Wenn Sie einen Paketnamen in das Feld eingeben, werden alle Teile der Paket-ID, die nicht vorhanden sind, rot hervorgehoben. In diesem Fall erstellt Android Studio das Paket, nachdem Sie auf OK geklickt haben. Dieses Feld muss einen Wert enthalten. Andernfalls enthält die Java Datei keine package Anweisung und die Klasse oder der Typ wird nicht in einem Paket im Projekt platziert.
    • Der Standardwert hängt davon ab, wie Sie das Dialogfeld Neue Klasse erstellen aufgerufen haben. Wenn Sie zuerst eine Java-Datei oder einen Java-Ordner im Fenster Projekt ausgewählt haben, ist der Standardwert das Paket für das ausgewählte Element. Wenn Sie zuerst in einer Java-Datei im Code-Editor geklickt haben, ist der Standardwert das Paket, das diese Datei enthält.

    • Sichtbarkeit : Wählen Sie aus, ob die Klasse oder der Typ für alle Klassen oder nur für die im eigenen Paket sichtbar sein soll.
    • Modifizierer : Wählen Sie für eine Klasse den Modifizierer Abstrakt oder Final oder keinen von beiden aus.
    • Dialogfeld „Auswähle Überschreibungen“ anzeigen : Wenn Art auf Klasse festgelegt ist, aktivieren Sie diese Option, um das Dialogfeld „Methoden zum Überschreiben/Implementieren auswählen“ zu öffnen, nachdem Sie auf OK geklickt haben. In diesem Dialogfeld können Sie Methoden auswählen, die Sie überschreiben oder implementieren möchten. Android Studio generiert dann Skelettcode für diese Methoden.

    Alle Felder, die nicht auf die Art angewendet werden, sind ausgeblendet.

  4. Klicken Sie auf OK.
  5. Android Studio erstellt eine Java-Datei mit Skelettcode, die Sie ändern können. Die Datei wird im Code-Editor geöffnet.

Hinweis: Sie können eine Singleton-Klasse erstellen, indem Sie Datei > Neu > Singleton oder Datei > Neu > Java-Klasse auswählen. Die zweite Methode bietet mehr Optionen.

Android Studio-Dateivorlagen

In diesem Abschnitt wird der Android Studio-Dateivorlagencode in der VTL-Skriptsprache aufgeführt, gefolgt von Definitionen der Variablen. Die Werte, die Sie im Dialogfeld Neue Klasse erstellen angeben, werden zu den Variablenwerten in der Vorlage. Beachten Sie, dass die Zeilen, die mit #if (${VISIBILITY} beginnen, sich bis zur öffnenden geschweiften Klammer ( { ) erstrecken.

Dateivorlage „AnnotationType“

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end @interface ${NAME} #if (${INTERFACES} != "")extends ${INTERFACES} #end {
}

Dateivorlage „Class“

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end #if (${ABSTRACT} == "TRUE")abstract #end #if (${FINAL} == "TRUE")final #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end {
}

Dateivorlage „Enum“

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end {
}

Dateivorlage „Interface“

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end enum ${NAME} #if (${INTERFACES} != "")implements ${INTERFACES} #end {
#end {
}

Dateivorlage „Singleton“

#if (${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (${IMPORT_BLOCK} != "")${IMPORT_BLOCK}
#end
#parse("File Header.java")

#if (${VISIBILITY} == "PUBLIC")public #end class ${NAME} #if (${SUPERCLASS} != "")extends ${SUPERCLASS} #end #if (${INTERFACES} != "")implements ${INTERFACES} #end {
    private static final ${NAME} ourInstance = new ${NAME}();

    #if (${VISIBILITY} == "PUBLIC")public #end static ${NAME} getInstance() {
        return ourInstance;
    }

    private ${NAME}() {
    }
}

Variablen für Dateivorlagen

Android Studio ersetzt Dateivorlagenvariablen durch Werte in der generierten Java-Datei. Sie geben die Werte im Dialogfeld Neue Klasse erstellen ein. Die Vorlage enthält die folgenden Variablen, die Sie verwenden können:

  • IMPORT_BLOCK : Eine durch Zeilenumbrüche getrennte Liste von Java import Anweisungen, die zur Unterstützung von Superklassen oder Schnittstellen erforderlich sind, oder ein leerer String (""). Wenn Sie beispielsweise nur die Runnable Schnittstelle implementieren und nichts erweitern, ist diese Variable "import java.lang.Runnable;\n". Wenn Sie die Runnable Schnittstelle implementieren und die Activity Klasse erweitern, ist sie "import android.app.Activity;\nimportjava.lang.Runnable;\n".
  • VISIBILITY : Gibt an, ob die Klasse öffentlichen Zugriff hat oder nicht. Sie kann den Wert PUBLIC oder PACKAGE_PRIVATE haben.
  • SUPERCLASS : Ein einzelner Klassenname oder leer. Wenn vorhanden, wird nach dem neuen Klassennamen eine extends ${SUPERCLASS}-Klausel eingefügt.
  • INTERFACES : Eine durch Kommas getrennte Liste von Schnittstellen oder leer. Wenn vorhanden, wird nach der Superklasse oder nach dem Klassennamen eine implements ${INTERFACES}-Klausel eingefügt, falls keine Superklasse vorhanden ist. Bei Schnittstellen- und Annotationstypen haben die Schnittstellen das extends Keyword.
  • ABSTRACT : Gibt an, ob die Klasse abstrakt sein soll oder nicht. Sie kann den Wert TRUE oder FALSE haben.
  • FINAL : Gibt an, ob die Klasse final sein soll oder nicht. Sie kann den Wert TRUE oder FALSE haben.