Page 691 - Informatica dalla A a Z
P. 691
Un array è una lista indicizzata di variabili dello stesso tipo, memorizzata in un’unica varia-
bile, a cui si accede attraverso l’utilizzo di un indice che può assumere tutti i valori compresi
tra 0 e (n-1), dove n è il numero di elementi contenuti nell’array.
string[] stati;
crea una variabile array di stringhe. Per poter essere usato si deve inizializzare, cioè si de-
vono specificare i suoi dati, o direttamente o specificandone le dimensioni.
Oltre ai modi classici, è possibile scorrere l’array attraverso il costrutto foreach:
foreach ( string stato in stati ){
Console.WriteLine( stato );
}
Evitando l’uso degli indici.
Le Classi e gli Oggetti
Le classi costituiscono l’elemento base della programmazione ad oggetti. La loro crea-
zione permette di definire nuovi tipi di dati, con particolari caratteristiche e proprietà.
Per questo le classi costituiscono le regole e i tratti somatici che ogni oggetto, di quel
tipo, deve osservare.
Un oggetto non è altro che un’istanza di una determinata classe.
L’istanza, invece, rappresenta un elemento distinto, allocato in memoria, con propri attri-
buti appartenenti alla stessa natura di quelli definiti nella classe, ma che possono anche
assumere valori propri e differire da istanza ad istanza.
Approfondimento: Per capire meglio il significato di classe ed oggetto pensiamo al con-
cetto di “Persona”. Il colore degli occhi, la lunghezza dei capelli e l’altezza, ad esempio,
sono tutte caratteristiche comuni alle persone, ma ognuna di esse cambia da persona a
persona. Perciò possiamo tranquillamente affermare che la “classe persona” costituisce lo
stampo di ogni “oggetto persona”, mentre ogni istanza è un elemento concreto in memoria
che può assumere valori propri.
La sintassi per definire una classe è la seguente:
[modificatori] class nome
{
...
}
I modificatori delle classi sono 4: public, private, protected e internal. Public estende la vi-
sibilità di questa classe a tutte le altre; private limita la visibilità solo alla classe stessa;
protected limita la visibilità alla classe e alle sue ereditarie, mentre internal limita la visibi-
lità della classe ai soli elementi appartenenti allo stesso assembly della classe.
Le variabili di istanza attribuiscono a una classe le caratteristiche di cui vogliamo dotarla.
687