Crea una classe o un tipo Java

Con la finestra di dialogo Crea nuovo corso e i modelli di file, Android Studio ti aiuta a creare rapidamente i nuovi corsi e tipi seguenti:

  • Classi Java
  • Classi di enumerazione e singleton
  • Tipi di interfaccia e annotazioni

Dopo aver compilato i campi della finestra di dialogo Crea nuovo corso e aver fatto clic su OK, Android Studio crea un file .java contenente il codice dello scheletro, inclusa un'istruzione per il pacchetto, le eventuali importazioni necessarie, un'intestazione e una dichiarazione di classe o di tipo. Dopodiché puoi aggiungere il codice a questo file.

I modelli di file specificano in che modo Android Studio genera lo scheletro di codice. Puoi utilizzare i modelli di file forniti con Android Studio così come sono o personalizzarli in base al tuo processo di sviluppo.

Visualizzazione e personalizzazione dei modelli di file

Android Studio fornisce modelli di file che determinano in che modo vengono creati nuovi tipi e classi di Java nella finestra di dialogo Crea nuova classe. Puoi personalizzare questi modelli.

La finestra di dialogo Crea nuovo corso.

Figura 1. La finestra di dialogo Crea nuovo corso.

I modelli di file di Android Studio includono il codice Velocity Template Language (VTL) e le variabili che gestiscono queste opzioni aggiuntive. La finestra di dialogo Crea nuova classe utilizza i modelli di file AnnotationType, Class, Enum, Interface e Singleton.

Per visualizzare i modelli, trovare le personalizzazioni e modificare i modelli:

  1. Svolgere una delle seguenti operazioni:

    • Per Windows o Linux, seleziona File > Impostazioni > Editor > Modelli di file e codice > File.
    • Per macOS, seleziona Android Studio > Preferenze > Editor > Modelli di file e codice > File.

    Nell'elenco di modelli, i nomi dei modelli interni sono in grassetto. I nomi dei modelli personalizzati sono mostrati con un colore di evidenziazione, ad esempio il blu.

  2. Personalizza i modelli di file in base alle tue esigenze.

    Se vuoi utilizzare i campi della finestra di dialogo Crea nuovo corso, assicurati che le modifiche siano conformi al codice del modello di file di Android Studio.

Per ulteriori informazioni sui modelli di file, incluso VTL, consulta Modelli di file e codice e Finestra di dialogo Modelli di file e codice.

Creazione di una classe o di un tipo Java

Android Studio consente di creare nuove classi Java, classi di enumerazione e singleton, nonché tipi di interfaccia e annotazioni basati su modelli di file.

Per creare una nuova classe o un nuovo tipo Java, segui questi passaggi:

  1. Nella finestra Progetto, fai clic con il pulsante destro del mouse su un file o una cartella Java e seleziona Nuovo > Classe Java.
  2. In alternativa, seleziona un file o una cartella Java nella finestra Progetto oppure fai clic su un file Java nell'editor di codice. Quindi seleziona File > Nuovo > Classe Java.

    L'elemento selezionato determina il pacchetto predefinito per la nuova classe o il nuovo tipo.

  3. Nella finestra di dialogo Crea nuovo corso, compila i seguenti campi:
    • Nome: il nome della nuova classe o del nuovo tipo. Deve rispettare i requisiti per i nomi Java. Non digitare un'estensione del nome di file.
    • Tipo: seleziona la categoria di classe o il tipo.
    • Superclass: il corso da cui eredita il nuovo corso. Puoi digitare il nome del pacchetto e della classe o solo il nome della classe, quindi fare doppio clic su un elemento nell'elenco a discesa per completarlo automaticamente.
    • Interfacce: una o più interfacce implementate dalla nuova classe o dal nuovo tipo. Più interfacce devono essere separate da una virgola seguita da uno spazio facoltativo. Puoi digitare il nome del pacchetto e dell'interfaccia o solo il nome dell'interfaccia, quindi fare doppio clic su un elemento nell'elenco a discesa per completarlo automaticamente.
    • Il completamento automatico funziona solo per il nome della prima interfaccia. Tieni presente che anche se la virgola e il nome dell'interfaccia che segue possono generare un errore nella descrizione comando, puoi ignorare l'errore perché non influisce sul codice generato.

    • Pacchetto: il pacchetto in cui risiederà la classe o il tipo. L'impostazione predefinita viene visualizzata automaticamente nel campo. Se digiti il nome di un pacchetto nel campo, le eventuali parti dell'identificatore del pacchetto non esistenti vengono evidenziate in rosso. In questo caso, Android Studio crea il pacchetto dopo che hai fatto clic su OK. Questo campo deve contenere un valore. In caso contrario, il file Java non conterrà un'istruzione package e la classe o il tipo non verranno inseriti all'interno di un pacchetto del progetto.
    • L'impostazione predefinita dipende da come hai avviato la finestra di dialogo Crea nuovo corso. Se per la prima volta hai selezionato un file o una cartella Java nella finestra Progetto, il valore predefinito sarà il pacchetto dell'elemento selezionato. Se hai fatto clic per la prima volta su un file Java nell'editor di codice, il valore predefinito è il pacchetto che contiene il file.

    • Visibilità - Scegli se la classe o il tipo deve essere visibile a tutte le classi o solo a quelle del relativo pacchetto.
    • Modificatori: seleziona il modificatore Astratto o Finale per un Classe, oppure nessuno dei due.
    • Mostra finestra di dialogo Seleziona override: per un Tipo di Class, seleziona questa opzione per aprire la finestra di dialogo Seleziona i metodi per eseguire l'override/implementare dopo aver fatto clic su OK. In questa finestra di dialogo puoi selezionare i metodi che vuoi sostituire o implementare e Android Studio genererà uno scheletro di codice per questi metodi.

    Tutti i campi non applicabili al campo Tipo vengono nascosti.

  4. Fai clic su Ok.
  5. Android Studio crea un file Java con una bozza di codice modificabile. Il file viene aperto nell'editor di codice.

Nota: puoi creare una classe singleton selezionando File > Nuovo > Singleton o File > Nuovo > Classe Java. Quest'ultima tecnica offre più opzioni.

Modelli di file di Android Studio

In questa sezione è elencato il codice del modello di file di Android Studio scritto nel linguaggio di scripting VTL, seguito dalle definizioni delle variabili. I valori specificati nella finestra di dialogo Crea nuovo corso diventano i valori della variabile nel modello. Tieni presente che le righe che iniziano con #if (${VISIBILITY} si estendono fino alle parentesi graffe aperte ({).

Modello di file 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 {
}

Modello di file del corso

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

Modello di file di 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 {
}

Modello di file dell'interfaccia

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

Modello di file 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}() {
    }
}

Variabili del modello di file

Android Studio sostituisce le variabili del modello di file con i valori nel file Java generato. Inserisci i valori nella finestra di dialogo Crea nuovo corso. Il modello contiene le seguenti variabili che puoi utilizzare:

  • IMPORT_BLOCK: un elenco delimitato da nuova riga di istruzioni Java import necessarie per supportare superclassi o interfacce oppure una stringa vuota (""). Ad esempio, se implementi solo l'interfaccia Runnable e non estendi nulla, questa variabile sarà "import java.lang.Runnable;\n". Se implementi l'interfaccia Runnable ed estendi la classe Activity, sarà "import android.app.Activity;\nimportjava.lang.Runnable;\n".
  • VISIBILITY: indica se il corso avrà accesso pubblico o meno. Può avere un valore di PUBLIC o PACKAGE_PRIVATE.
  • SUPERCLASS: un nome di un singolo corso o vuoto. Se presente, ci sarà una clausola extends ${SUPERCLASS} dopo il nuovo nome della classe.
  • INTERFACES: un elenco di interfacce separato da virgole o vuoto. Se presente, ci sarà una clausola implements ${INTERFACES} dopo la superclasse, o dopo il nome della classe se non ne esistono. Per le interfacce e i tipi di annotazioni, corrispondono alla parola chiave extends.
  • ABSTRACT: indica se la classe deve essere astratta o meno. Può avere un valore di TRUE o FALSE.
  • FINAL: indica se il corso deve essere definitivo. Può avere un valore TRUE o FALSE.