Modifica degli elementi Java

In questa sezione verranno modificati elementi Java nel workbench.

Utilizzo della visualizzazione Struttura

  1. Per aprire il file junit.samples.VectorTest.java nell'editor Java, fare doppio clic sul file nella visualizzazione Explorer pacchetti.

  2. Si osservi l'evidenziazione della sintassi. Di seguito sono riportati esempi di parti di origine java che vengono rese in maniera diversa:

    • Commenti regolari
    • Commenti Javadoc
    • Parole chiave
    • Stringhe.
    Evidenziazione sintassi
  3. Esaminare la visualizzazione Struttura. Visualizza la struttura del file Java che include la dichiarazione di pacchetto, le dichiarazioni di importazione, i campi, i tipi e i metodi. La visualizzazione Struttura indica anche se un elemento Java è statico, astratto, finale e così via. La visualizzazione Struttura indica anche se un metodo viene sovrascritto da una classe base (sovrascritto) oppure quando implementa un metodo da un'interfaccia(implementa).

    Visualizzazione Struttura
  4. Per applicare un filtro alla visualizzazione, attivare o disattivare i pulsanti Hide Fields, Nascondi i membri statici e Nascondi membri non pubblici.

    Barra degli strumenti visualizzazione Struttura
  5. Attivare o disattivare il pulsante Ordina nella visualizzazione Struttura per disporre gli elementi Java in ordine alfabetico piuttosto che nell'ordine in cui sono visualizzati nel file Java.

  6. E possibile modificare il codice sorgente visualizzando l'intero file Java oppure restringere la visualizzazione a un singolo elemento Java. Fare clic sul pulsante Mostra solo origine dell'elemento selezionato nella barra degli strumenti.

    Quindi, nella visualizzazione Struttura, selezionare un elemento. Si osservi come nell'editor Java viene visualizzato solo l'elemento selezionato.

    Pulsante della barra degli strumenti Mostra solo elemento selezionato
  7. Fare nuovamente clic sul pulsante Mostra solo origine dell'elemento selezionato per visualizzare l'intero file Java.

    Si osservi come, selezionando elementi diversi nella visualizzazione Struttura, questi vengono visualizzati nuovamente nell'editor in una visualizzazione di file completa. La selezione della visualizzazione Struttura viene, ora, indicata con un indicatore di intervallo sul righello verticale sul margine sinistro dell'editor Java.

    Indicatore di intervallo

Aggiunta di metodi e utilizzo dell'Assistente al codice

  1. Assicurarsi che il pulsante Ordine alfabetico sulla barra degli strumenti della visualizzazione Struttura sia disattivato.

  2. Nell'editor Java cominciare ad aggiungere un metodo immettendo quanto segue alla fine del file VectorTest.java (prima delle parentesi di chiusura del tipo):

    public void testSizeIsThree() {

    Appena si digita il nome del metodo nell'area dell'editor, viene visualizzato il nuovo metodo nella parte inferiore della visualizzazione Struttura.

    Nuovo metodo nella visualizzazione Struttura
  3. Fare clic sul pulsante Salva.

    L'unità di compilazione viene compilata automaticamente e gli errori vengono visualizzati nella visualizzazione Explorer pacchetti, nella visualizzazione Barra degli strumenti e sul righello verticale. Nella visualizzazione Explorer pacchetti, gli errori si propagano al progetto dell'unità di compilazione che li contiene.

    Propagazione degli errori in Explorer pacchetti
  4. Completare il nuovo metodo immettendo quanto segue:

        assertTrue(fFull.size() == 3);
    }
  5. Salvare il file.

    Gli indicatori degli errori scompaiono.

Eliminazione e sostituzione di un metodo dalla cronologia locale

In questa sezione, si utilizzerà la funzione della cronologia locale per passare alla versione salvata in precedenza di un singolo elemento Java.

  1. Eliminare il metodo appena creato selezionandolo nella visualizzazione Struttura e facendo clic su Elimina nel menu di scelta rapida.

  2. Aggiungere una nuova versione del metodo immettendo quanto segue alla fine del file VectorTest.java nell'editor Java:

    public void testSizeIsThree() {
        fFull.add(0, new Integer(0));
        fFull.remove(new Integer(3));
        assertTrue(fFull.size() == 3);
    }

    Salvare il file.

  3. Nella visualizzazione Struttura, selezionare il metodo testSizeIsThree(), e scegliere Sostituisci da cronologia locale dal relativo menu di scelta rapida.

  4. Nella finestra di dialogo Sostituisci elemento Java dalla cronologia locale, l'elenco Cronologia locale mostra i diversi stati salvati dell'elemento. Il riquadro Confronta origine Java mostra in dettaglio le differenze tra la risorsa selezionata della cronologia e la risorsa del workbench esistente.

    Sostituisci da cronologia locale
  5. Nel riquadro Cronologia locale, selezionare la versione eliminata, quindi fare clic sul pulsante Sostituisci.

    Nell'editor Java, il metodo viene sostituito con la versione della cronologia selezionata.

  6. Salvare il file.

Utilizzo di Content Assist

  1. Aprire il file junit.samples.VectorTest.java nell'editor Java.

  2. Passare al metodo testSizeIsThree() selezionandolo nella visualizzazione Struttura.

  3. Aggiungere le righe riportate di seguito alla fine del metodo:

    Vector v = new Vector();
    for (int i=0; i<3; i++)
        v.addElement(new Object());
    assert
  4. Posizionando il cursore alla fine della parola assert, premere Ctrl+Barra spaziatrice per attivare Content Assist.

    Verrà visualizzata la finestra Content Assist con un elenco delle proposte. Scorrere l'elenco per visualizzare le scelte disponibili.

    Content Assist
  5. Con la finestra Content Assist attiva, immettere la lettera 't' dopoassert (senza interporre alcuno spazio). In questo modo si restringe l'elenco alle voci che cominciano con la parola 'assert'.

    Selezionare e passare con il cursore su diverse voci dell'elenco per visualizzare qualsiasi aiuto Javadoc disponibile per ciascuna voce.

    Content Assist filtrato
  6. Selezionare assertTrue(boolean) dall'elenco e premere Invio.

    Viene inserito il codice per il metodo assertTrue(boolean).

  7. Completare la riga come segue:

    assertTrue(v.size() == fFull.size());
  8. Salvare il file.

Utilizzo di modelli

  1. Aprire il file junit.samples.VectorTest.java nell'editor Java.

  2. Cominciare ad aggiungere un nuovo metodo immettendo quanto segue:

    public void testValues() {
        Integer[] expected= new Integer[3];
        for
  3. Posizionando il cursore dopo la parola for, premere Ctrl+Barra spaziatrice per attivare Content Assist.

    Content Assist for
  4. Scegliere la voce for - iterate over array.

    Il modello viene inserito nell'editor e viene evidenziato i. Il nome della matrice locale viene individuato automaticamente.

    Modello inserito per
  5. Premere Invio per confermare il modello.

  6. Completare il ciclo for:

    public void testValues() {
        Integer[] expected= new Integer[3];
        for (int i= 0; i < expected.length; i++) {
            expected[i]= i + 1;
        }
        
        Integer[] actual= to
  7. Posizionando il cursore alla fine della parola to, premere Ctrl+Barra spaziatrice per attivare Content Assist. Selezionaretoarray - convertire la raccolta in matrice.

    Modello inserito per

    Il modello viene inserito nell'editor e viene evidenziato e selezionato type.

    Modello inserito per
  8. Sovrascrivere la selezione immettendo Integer. Il tipo del costruttore della matrice viene modificato in contemporanea.

  9. Immettere Tab per evidenziare e selezionarecollection e sovrascrivere la selezione immettendo fFull.

    Modello inserito per
  10. Premere Invio per confermare il modello.

  11. Aggiungere le righe di codice riportate di seguito per completare il metodo:

            assertEquals(expected.length, actual.length);
            for (int i= 0; i < actual.length; i++)
                assertEquals(expected[i], actual[i]);
        }
  12. Salvare il file.

Organizzazione delle importazioni

  1. Aprire il file junit.samples.VectorTest.java nell'editor Java.

  2. Eliminare le dichiarazioni di importazione selezionandole nella visualizzazione Struttura e selezionando Elimina dal menu di scelta rapida.

    Menu di scelta rapida della visualizzazione Struttura
  3. Dal menu di scelta rapida nell'editor, selezionare Organizza importazioni.

    Le istruzioni di importazione necessarie vengono aggiunte nella parte iniziale del codice, al di sotto della dichiarazione del pacchetto.

    Organizza importazioni

    In alternativa, è possibile richiamare Organizza importazioni direttamente dal menu di scelta rapida della dichiarazione di importazione nella visualizzazione Struttura.

    Nota: è possibile specificare l'ordine delle dichiarazioni di importazione in Preferenze (Finestra > Preferenze > Java > Organizza importazioni).

  4. Salvare il file.

Estrazione di un metodo

In questa sezione verrà migliorato il codice del costruttore di junit.framework.TestSuite. Per rendere maggiormente chiaro lo scopo del codice, il codice che raccoglie i tipi di test da classi base verrà estratto e inserito in un nuovo metodo denominato collectTestMethods.

  1. Nel file junit.framework.TestSuite.java, selezionare la seguente sezione di codice:

    Class superClass= theClass;
    Vector names= new Vector();
    while (Test.class.isAssignableFrom(superClass)) {
        Method[] methods= superClass.getDeclaredMethods();
        for (int i= 0; i < methods.length; i++) {
            addTestMethod(methods[i], names, constructor);
        }
        superClass= superClass.getSuperclass();
    }

    Selezionare l'intervallo di codice utilizzando la funzioneEspandi selezione a:

    1. Passare al costruttore TestSuite(Class).
    2. Posizionare il cursore prima della parola while.
    3. Premere Alt+Maiusc+Freccia giù.
    4. Premere Alt+Maiusc+Freccia a sinistra twice.
  2. Dal menu di scelta rapida della selezione nell'editor, selezionare Refactor > Estrai metodo....

    Menu di scelta rapida di Estrai metodo
  3. Nel campo Nome metodo, digitare collectInheritedTests e fare clic su Avanti.

    Pagina 1 della procedura guidata di Estrai metodo
  4. La pagina di anteprima della funzione di refactoring visualizza le modifiche che verranno apportate.

    Premere Fine per estrarre il metodo.

    Pagina 2 della procedura guidata di Estrai metodo
  5. Passare al metodo estratto selezionandolo nella visualizzazione Struttura.

    Metodo estratto

Utilizzo di Apri dichiarazione e Apri su gerarchia dei tipi

  1. Aprire il file junit.samples.money.MoneyTest.java nell'editor Java.

  2. Sulla prima riga della dichiarazione di classe MoneyTest, selezionare la specifica della superclasse TestCase, quindi

    • selezionare dalla barra dei menu Esplora > Apri dichiarazione oppure
    • premere F3.

    Nota: questo comando funziona anche per metodi e campi.

    Menu di Apri dichiarazione

    La superclasse TestCase viene aperta nell'area di editor ed è anche rappresentata nella visualizzazione Struttura.

    Dichiarazione aperta
  3. Fare clic sulla scheda dell'editor TestCase.java per attivare questo editor. Assicurarsi che la dichiarazione di classe sia ancora selezionata e:

    • selezionare dalla barra dei menu Esplora > Apri gerarchia dei tipi oppure
    • premere F4.
    Menu di Apri gerarchia dei tipi
  4. Viene aperta la visualizzazione Gerarchia contenente la classe TestCase.

    Visualizzazione Gerarchia tipi

    Nota: è anche possibile aprire editor sui tipi e metodi presenti nella visualizzazione Gerarchia.

Concetti correlati

Visualizzazioni Java
Editor Java
Supporto refactoring
Modelli

Attività correlate

Utilizzo dell'editor Java
Visualizzazione o occultamento degli elementi
Visualizzazione di singoli elementi o interi file Java
Ordinamento degli elementi nelle visualizzazioni Java
Utilizzo della cronologia locale
Utilizzo di Content Assist
Utilizzo dei modelli
Gestione delle istruzioni di importazione
Refactoring
Refactoring con anteprima
Utilizzo della visualizzazione Gerarchia
Apertura di una Gerarchia dei tipi su un elemento Java
Apertura di una Gerarchia dei tipi sulla selezione del testo corrente
Apertura di un editor per un elemento selezionato

Riferimento correlato

Visualizzazione Struttura Java
Content Assist Java
Preferenze dei modelli
Preferenze di Organizza importazioni
Preferenze dell'editor Java
Errori di estrazione del metodo
Visualizzazione Gerarchia tipi