ePrometeusCorsoJavaJava
testi articoli
Testi Articoli  Download
Home | Basi | Espressioni | Comandi | Classi | Ereditarieta | Eccezioni | Thread | Utilita | 
CorsoJava è ora Video! Free for all!
Clicca Qui!

Classi
OOP
Ereditarietà
Polimorfismo
Chiamata
Classi
Record
Istanze
Costruttori
Campi
this
Allocazione
Più costruttori
this()
Inizializzazioni
Riferimenti
Ordine
Metodi
Invocazione
Overloading
Attenzione
Finalizzazione
Static e Final
Campi statici
Blocco static
Metodi statici
Visibilità
Costanti
Package
import
import *
Classpath
L'interprete
Zip e Jar

<<< Più costruttori >>>
Posso avere vari costruttori:

Possiamo creare gli oggetti senza specificare nessuno caratteristica. Per esempio se andiamo dal negoziando accedere una radio senza dire nulla, in negoziante ci darà una radio comune che copre la maggior parte delle esigenze. Come dire che quando viene chiesto una radio mi viene data una radio standard. Questa cosa in programmazione oggetti la esprimo chiamando il costruttore senza argomenti. Ma io posso definire dei costruttori con argomenti. Ecco un esempio:

Stack (int n) { 
 top=0; 
 stack = new int [n]; 
}

Questo è un costruttore che crea uno stack di dimensione fissa. Per tornare al nostro paragone con il negozio, è come se avessimo chiesto al negoziante una radio con certe caratteristiche.

Se ho un costruttore qualsiasi non ho quello di default

Una cosa a cui bisogna stare attenti è che il meccanismo di aggiunta automatica di costruttori viene disabilitato quando l'utente aggiunge esplicitamente un costruttore. Vediamo l'esempio:

Stack (int n)
  { top=0; stack = new int [n];}
Stack s = new Stack (); //ERRORE!

Se nello stack aggiungiamo il costruttore con un argomento, sparisce il costruttore senza argomenti. Di conseguenza un codice prima perfettamente funzionante che usa il costruttore senza argomenti non funziona più. Per fortuna rimediare è facile, basta aggiungere esplicitamente il costruttore senza argomenti con un corpo vuoto.

ePrometeus s.r.l. - Web Software House & Open Source System Integrator
MILANO - SAN BENEDETTO DEL TRONTO(AP)
Contatti: info@eprometeus.com