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.
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:
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.
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:
- 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.
- 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.
- 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
packageAnweisung und die Klasse oder der Typ wird nicht in einem Paket im Projekt platziert. - 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.
- Klicken Sie auf OK.
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.
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.
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.
Alle Felder, die nicht auf die Art angewendet werden, sind ausgeblendet.
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 JavaimportAnweisungen, die zur Unterstützung von Superklassen oder Schnittstellen erforderlich sind, oder ein leerer String (""). Wenn Sie beispielsweise nur dieRunnableSchnittstelle implementieren und nichts erweitern, ist diese Variable"import java.lang.Runnable;\n". Wenn Sie dieRunnableSchnittstelle implementieren und dieActivityKlasse 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 WertPUBLICoderPACKAGE_PRIVATEhaben.SUPERCLASS: Ein einzelner Klassenname oder leer. Wenn vorhanden, wird nach dem neuen Klassennamen eineextends ${SUPERCLASS}-Klausel eingefügt.INTERFACES: Eine durch Kommas getrennte Liste von Schnittstellen oder leer. Wenn vorhanden, wird nach der Superklasse oder nach dem Klassennamen eineimplements ${INTERFACES}-Klausel eingefügt, falls keine Superklasse vorhanden ist. Bei Schnittstellen- und Annotationstypen haben die Schnittstellen dasextendsKeyword.ABSTRACT: Gibt an, ob die Klasse abstrakt sein soll oder nicht. Sie kann den WertTRUEoderFALSEhaben.FINAL: Gibt an, ob die Klasse final sein soll oder nicht. Sie kann den WertTRUEoderFALSEhaben.