Java – Variabili

Le variabili sono dei valori modificabili, ovvero sono dei nomi che rappresentano un valore di un certo tipo, il valore associato al nome può essere variato.

Ad esempio se dico che X è una variabile di tipo intero, e poi dico che X ha valore 10, se scrivo l’espressione 5 + X, è come se avessi scritto l’espressione 5 + 10.

Una variabile è una coppia composta da:

  • un nome simbolico, detto anche identificativo;
  • un indirizzo di memoria destinato a contenere una determinata quantità, ovvero il valore della variabile;

Variabile: Dichiarazione

Il nome simbolico serve ai programmi come riferimento all’indirizzo di memoria al fine di accedere e/o modificarne il valore durante l’esecuzione.

Ogni variabile ha associato anche un tipo (come Integer, String, boolean, etc.) che definisce le caratteristiche che avranno i valori che la variabile potrà assumere

La sintassi per la dichiarazione di una variabile è:
[public|protected|private] [static] [final] Tipo identificatore [= value];

Scope di una variabile

Lo scope è l’area del codice nel quale una variabile resta associato ad un indirizzo di memoria, quindi l’aerea di codice entro il quale una variabile mantiene il suo valore.

In Java ogni blocco definisce uno scope e ogni variabile locale ha come scope l’area di codice che inizia dalla definizione della variabile stessa e termina con il blocco corrente.

Nei linguaggi dotati del concetto di blocco, una variabile visibile all’interno di un blocco è visibile anche all’interno di eventuali blocchi annidati.

Le regole fondamentali di visibilità sono in genere modificate dalla regola speciale dello shadowing, secondo cui una variabile locale “nasconde” una eventuale variabile omonima definita nello scope superiore.

Se in un programma è definita una variabile globale e in un determinato sottoprogramma viene definita una variabile locale omonima, il sottoprogramma in questione perde la visibilità della variabile globale, nascosta da quella locale.

<begin blocco 1>
        int x,… /* qui è visibile x */
        <begin blocco 1.1>
               int y,… /* qui sono visibili x ed y */
        <end blocco 1.1>
       <begin blocco 1.2>
               int z,… /* qui sono visibili x e z */
       <begin blocco 1.2.1>
               int x, y,… /* qui sono visibili x, z e y */
       <end blocco 1.2.1>
       Fvfvsbgfb
       <end blocco 1.2>
<end blocco 1>

Assegnazione, incremento e decremento

L’operatore = è detto operatore di assegnazione (o assegnamento).

Alla sua sinistra ci deve essere il nome di una variabile, mentre alla destra ci può essere un singolo valore o espressione.

Forme equivalenti per l’incremento/decremento di 1:

items = items + 1; items++; items += 1;
items = items – 1; items--; items -= 1; 

Per incrementare/decrementare di una quantità generica x:

items = items + x; items = items – x; items += x; items -= x;

Lascia una risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Share via
Copy link
Verificato da MonsterInsights