• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Guida Dichiarare una classe

ptm

Utente Master
Autore del topic
13 Maggio 2008
2.716
62
Miglior risposta
0
Dichiarare e utilizzare una classe

Abbiamo visto nell'introduzione della programmazione agli oggetti che una classe rappresenta il modello di un oggetto e può contenere attributi o metodi. La sintassi utilizzata per definire una classe è la seguente
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!
All'interno di una classe possono essere due metodi particolari chiamati:
  1. Costruttore
  2. Distruttore

Accedere ad attributi o metodi

Per accedere ad attributi di un oggetto si utilizza la seguente sintassi
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!
Similmente per richiamare un metodo
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!


Costruttore

E' il metodo che viene chiamato automaticamente quando viene creato un nuovo oggetto tramite la parola chiave new. Viene utilizzato tipicamente per svolgere inizializzazioni di vario tipo (per esempio per valorizzare attributi). Vediamo un esempio
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!
La classe persona contiene un attributo $nome. Vediamo anche il metodo costruttore che accetta un parametro e lo assegna all'attributo nome. Quello che viene fatto successivamente è creare due oggetti di tipo persona, ma con due parametri diversi.
Quindi $p1 avrà come attributo nome "Luigi", mentre $p2 avrà come attributo nome "Mario"


Distruttore

E' il metodo che viene chiamato automaticamente quando un oggetto viene distrutto (per esempio quando non ci sono più riferimenti all'oggetto). Tuttavia ci interessa un po' meno dato che non c'è garanzia del momenti in cui viene richiamato
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!
NB. Al termine dell'esecuzione dello script tutti gli oggetti vengono comunque distrutti senza che debbano essere dereferenziati.


Modificatori di visibilità

E' possibile definire all'interno di php tre modificatori di visibilità per permettere o negare la possibilità di accedere dall'esterno della classe a metodi o attrbuti:
  • public (var) L'attributo/metodo è visibile ovunque
  • protected L'attributo/metodo è visibile solo all'interno della classe o delle sottoclassi
  • private L'attributo/metodo è visibile solo all'interno della classe stessa

Esempio
PHP:
Perfavore, Entra oppure Registrati per vedere i codici!
Anche se non è molto utile in pratica, vengono mostrati gli usi dei vari modificatori di visibilità.

Keyword $this

Fino ad ora è stato usato $this senza dire cosa fosse esattamente.
Durante l'esecuzione viene definita automaticamente una variabile speciale di nome $this che si riferisce all'istanza dell'oggetto a runtime; perciò utilizzando (vedi esempio precedente) $this->nome=$n non facciamo altro che andare a valorizzare a $n l'attributo nome dell'oggetto stesso.
 
Ultima modifica:
  • Like
Reactions: 2 people