Java-Klasse oder -Typ erstellen

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

  • Java-Klassen
  • Enumeration- und Singleton-Klassen
  • Schnittstellen- und Anmerkungstypen

Nachdem Sie die Felder des Dialogfelds Create New Class (Neue Klasse erstellen) ausgefüllt und auf OK geklickt haben, erstellt Android Studio eine .java-Datei, die einen grundlegenden Code einschließlich einer Paketanweisung, aller erforderlichen Importe, eines Headers und einer Klassen- oder Typdeklaration enthält. Als Nächstes können Sie dieser Datei Ihren Code hinzufügen.

Dateivorlagen geben an, wie Android Studio den Code generiert. Sie können die in Android Studio bereitgestellten Dateivorlagen unverändert verwenden oder an Ihren Entwicklungsprozess anpassen.

Dateivorlagen ansehen und anpassen

Android Studio bietet Dateivorlagen, mit denen über das Dialogfeld Neue Klasse erstellen festgelegt wird, wie neue Java-Klassen und -Typen erstellt werden. Sie können diese Vorlagen anpassen.

Das Dialogfeld „Neue Klasse erstellen“

Abbildung 1. Das Dialogfeld Neue Klasse erstellen.

Die Android Studio-Dateivorlagen enthalten VTL-Code (VTL) und Variablen, mit denen diese zusätzlichen Optionen gehandhabt werden. 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:

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

    • Unter Windows oder Linux wählen Sie File > Settings > Editor > File and Code Templates > Files aus.
    • Unter macOS wählen Sie Android Studio > Einstellungen > Editor > Datei- und Codevorlagen > Dateien aus.

    In der Vorlagenliste sind die Namen interner Vorlagen fett formatiert. Benutzerdefinierte Vorlagennamen werden in einer Hervorhebungsfarbe angezeigt, z. B. Blau.

  2. Passen Sie die Dateivorlagen nach Bedarf an.

    Wenn Sie die Felder des Dialogfelds Neue Klasse erstellen verwenden möchten, achten Sie darauf, dass Ihre Änderungen dem Dateivorlagencode für Android Studio 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, Aufzählungs- und Singleton-Klassen sowie Schnittstellen- und Annotationstypen erstellen, die auf Dateivorlagen basieren.

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 im Code-Editor auf eine Java-Datei 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 Neuen Kurs erstellen die Felder aus:
    • Name: Der Name der neuen Klasse oder des neuen Typs. Sie muss den Java-Namensanforderungen entsprechen. Geben Sie keine Dateiendung ein.
    • Art: Wählen Sie die Kategorie der Klasse oder des Typs aus.
    • Superklasse: Die Klasse, von der die neue Klasse übernommen wird. Sie können den Paket- und Klassennamen oder nur den Klassennamen eingeben und dann auf ein Element in der Drop-down-Liste doppelklicken, um es automatisch zu vervollständigen.
    • Schnittstelle(n): Eine oder mehrere Schnittstellen, die von der neuen Klasse oder dem neuen Typ implementiert werden. Mehrere Schnittstellen müssen durch ein Komma, gefolgt von einem optionalen Leerzeichen, getrennt werden. Sie können den Namen des Pakets und der Schnittstelle oder nur den Namen der Benutzeroberfläche eingeben und dann doppelt auf ein Element in der Drop-down-Liste klicken, um es zu vervollständigen.
    • Die automatische Vervollständigung funktioniert nur für den Namen der ersten Schnittstelle. Durch das Komma und den folgenden Schnittstellennamen kann zwar ein Fehler bei der Kurzinfo angezeigt werden, Sie können den Fehler jedoch ignorieren, da er sich nicht auf den generierten Code auswirkt.

    • Package – 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 nicht vorhandenen Teile der Paket-ID 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.
    • Die Standardeinstellung hängt davon ab, wie Sie das Dialogfeld Neue Klasse erstellen aufgerufen haben. Wenn Sie im Fenster Projekt zuerst eine Java-Datei oder einen Java-Ordner ausgewählt haben, wird standardmäßig das Paket für das ausgewählte Element verwendet. Wenn Sie zuerst im Codeeditor auf eine Java-Datei 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 diejenigen in einem eigenen Paket sichtbar sein soll.
    • Modifier: Wählen Sie den Modifikator Summary oder Final für eine Class oder keine der beiden Modifikatoren aus.
    • Dialogfeld „Auswahl Überschreibungen einblenden“: Klicken Sie für eine Art der Klasse auf 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 das Codegerüst für diese Methoden.

    Alle Felder, die nicht für die Art gelten, werden ausgeblendet.

  4. Klicke auf OK.
  5. In Android Studio wird eine Java-Datei mit einem Grundcode erstellt, den 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 letzte Methode bietet mehr Optionen.

Android Studio-Dateivorlagen

In diesem Abschnitt finden Sie den Vorlagencode für die Android Studio-Datei, der in der VTL-Skriptsprache geschrieben ist, gefolgt von Definitionen der Variablen. Die Werte, die Sie im Dialogfeld Neue Klasse erstellen angeben, werden zu den Variablenwerten in der Vorlage. Die Zeilen, die mit #if (${VISIBILITY} beginnen, reichen bis zur offenen geschweiften Klammer ({).

Dateivorlage für 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 {
}

Vorlage für Klassendatei

#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 {
}

Enum-Dateivorlage

#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 {
}

Vorlage für Schnittstellendatei

#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 {
}

Singleton-Dateivorlage

#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 in der generierten Java-Datei durch Werte. Sie geben die Werte im Dialogfeld Neuen Kurs erstellen ein. Die Vorlage enthält die folgenden Variablen, die Sie verwenden können:

  • IMPORT_BLOCK: eine durch Zeilenumbruch getrennte Liste von Java-import-Anweisungen, die zur Unterstützung einer übergeordneten Klasse oder von 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. Er kann den Wert PUBLIC oder PACKAGE_PRIVATE haben.
  • SUPERCLASS: ein einzelner Klassenname oder leer. Falls vorhanden, wird nach dem neuen Klassennamen eine extends ${SUPERCLASS}-Klausel eingefügt.
  • INTERFACES: eine durch Kommas getrennte Liste von Schnittstellen oder leer. Falls vorhanden, befindet sich eine implements ${INTERFACES}-Klausel nach der übergeordneten Klasse oder nach dem Klassennamen, wenn es keine Basisklasse gibt. Für Schnittstellen und Annotationstypen haben die Schnittstellen das Schlüsselwort extends.
  • ABSTRACT – Gibt an, ob die Klasse abstrakt sein soll oder nicht. Er kann den Wert TRUE oder FALSE haben.
  • FINAL – Gibt an, ob der Kurs endgültig sein soll oder nicht. Er kann den Wert TRUE oder FALSE haben.