Pagina Iniziale | Preferiti Comunity: Login | Registrati | Newsletter | Forum | Concorsi Newsgroup
Canali: Hardware | Software | Files | Webmaster | Cellulari | Shop     
Nel sito: News | Articoli | Files | Manuali | Consigli PC | Schede cellulari | Programmaz. | Hosting | Motori Ricerca | Glossario | Link
Servizi: Shopping | Forum | Crea un BLOG | Cartucce Compatibili | Hosting Aruba | Tool News |   Sponsor: Automazione Industriale
  Articoli

Recensioni
Consigli per PC


  News e files

Software
Telefonia
Internet
Tecnologia
Files e Download


  Manualistica

Guide HW/SW
Scripts ASP
Scripts HTML
Scripts Java
Scripts Delphi
Glossario


  Shopping

Hardware
Software e Giochi
Elettronica
Cinema e Film
Console e Accessori
Prodotti Ufficio
Formazione e Corsi

Tieniti aggiornato sul mondo della tecnologia con la nostra newsletter!
La tecnologia sulla tua
casella e-mail

[Info Newsletter]


Concessionaria Pubblicitaria


<< News Precedente [Fine Pagina] News Successiva >>
Il linguaggio Java: lez.3

Un articolo di: Fonte Esterna del 27/11/2002      Letture: 4558
Vai alla pagina:
 6 - Unità didattica 2.5)

10,63 Euro
Il linguaggio java da HOEPLI.it



  Buono sconto 4% su Toner e Cartucce agli utenti AZpoint. SU Iomiricarico.it!!

- I metodi costruttori

Esistono in Java, dei metodi speciali che hanno delle "proprietà". Tra questi c’è sicuramente il metodo costruttore. Questo ha le seguenti caratteristiche:

  1. Ha lo stesso nome della classe
  2. Non ha tipo di ritorno
  3. È chiamato automaticamente (e solamente) ogni volta che viene istanziato un oggetto, relativamente a quell’oggetto
  4. È presente in ogni classe.

- Caratteristiche di un costruttore:

Un costruttore ha sempre e comunque lo stesso nome della classe. Il fatto che non abbia tipo di ritorno non significa che ha tipo di ritorno void, ma che non dichiara alcun tipo di ritorno! Nel prossimo esempio è presentata una classe con un costruttore esplicito:

class Punto

{

    public Punto() //metodo costruttore

       {

        System.out.println("costruito un Punto");

         }

    int x;

    int y;

}

Notare che verrà eseguito il blocco di codice del costruttore, ogni volta che sarà istanziato un oggetto. Analizziamo meglio la sintassi che ci permette di istanziare oggetti, per esempio:

    Punto punto1 = new Punto();

E’ la parola chiave new che istanzia formalmente l’oggetto. La dichiarazione del reference che precede l’assegnazione, ci permette di avere un riferimento all’oggetto che si sta creando. Appare evidente che l’ultima parte da analizzare (Punto()), non bisogna interpretarla come "nomeDellaClasse con parentesi tonde", bensì come chiamata al costruttore. Questo, è l’unico modo per chiamare un costruttore, che mancando di tipo di ritorno, non può considerarsi un metodo ordinario.

L’utilità del costruttore non è esplicitata con l’esempio appena proposto! Essendo un metodo (anche se speciale), può avere una lista di parametri. Di solito un costruttore è utilizzato per inizializzare le variabili d’istanza di un oggetto. È quindi possibile codificare il seguente costruttore all’interno della classe Punto:

class Punto

{

    public Punto(int a, int b)

       {

        x=a;

        y=b;

       }

    int x;

    int y;

}

Con questa classe non sarà più possibile istanziare gli oggetti con la solita sintassi:

    Punto punto1 = new Punto();

otterremmo un errore di compilazione dal momento che staremmo cercando di chiamare un costruttore che non esiste (senza parametri)! La sintassi da utilizzare potrebbe essere la seguente, la quale ci permetterebbe anche d’inizializzare l’oggetto direttamente senza essere costretti ad utilizzare l’operatore dot:

    Punto punto1 = new Punto(5,6);

 

- Costruttore di default:

Quando creiamo un oggetto, dopo l’istanza che avviene grazie alla parola chiave new, c’è sempre una chiamata ad un costruttore. Il lettore però, potrà ora obiettare che alle classi utilizzate fino a questo punto, non abbiamo mai fornito costruttori, eppure, come appena detto, abbiamo chiamato costruttori ogni volta che abbiamo istanziato degli oggetti! Java, che è un linguaggio fatto da programmatori per i programmatori, ed ha una caratteristica molto importante che molti ignorano. Spesso, alcuni comandi non inseriti dal programmatore, sono inseriti automaticamente ed implicitamente da Java. In questo caso (ma non sarà l’unico), Java, se trova sprovvisto di costruttore una classe, gliene fornisce uno implicitamente che in pratica, non contiene comandi che provocano qualche conseguenza visibile al programmatore. Esso è detto "costruttore di default" e non ha parametri in entrata. Ciò giustifica il fatto che fino ad ora non abbiamo mai istanziato oggetti passando parametri al costruttore.

Se per esempio codificassimo la classe Punto nel modo seguente:

class Punto

{

    int x;

    int y;

}

Al momento della compilazione, il compilatore le aggiungerebbe il costruttore di default:

class Punto

{

    public Punto()

         {

    //nel costruttore di default

    //sembra non ci sia scritto niente . . .

         }

    int x;

    int y;

}

 

L’argomento sarà approfondito nei prossimi moduli.

N.B.: sottolineiamo una volta di più che il costruttore di default viene inserito in una classe dal compilatore, solo se il programmatore non ne ha fornito esplicitamente uno. Nel momento in cui il programmatore codifica un costruttore all’interno di una classe, sia esso con parametri o senza parametri, il compilatore non inserirà quello di default.

N.B.: Questo è una delle caratteristiche che fa si che Java possa essere definito come linguaggio semplice da apprendere! Il fatto che venga inserito un costruttore implicitamente all’interno delle classi, ci ha permesso di parlare di istanze di oggetti senza per forza dover spiegare un concetto tanto singolare come il costruttore.

 

Vai alla pagina:

Elenco delle pagine di "Il linguaggio Java: lez.3"

Introduzione al Modulo 3 - Pagina 1
Unità didattica 2.1) - Pagina 2
Unità didattica 2.2) - Pagina 3
Unità didattica 2.3) - Pagina 4
Unità didattica 2.4) - Pagina 5
Unità didattica 2.5) - Pagina 6
Unità didattica 2.6) - Pagina 7



[Indietro]    [Su]      [Home]      [Commenti]      [V. Stampabile]

Commenta questa notizia:
Non hai ancora fatto il
Login, puoi inserire commenti solo come anonimo.
ATTENZIONE: il tuo IP verrà memorizzato e mostrato a fianco del commento; con la pressione del tasto invia commento si esprime il consenso alla pubblicazione di tale informazione personale.
A discrezione dello staff, i commenti ritenuti non adatti od offensivi potranno essere rimossi. Nel caso di utilizzo di espressioni volgari od offensive il comportamento verrà segnalato al provider interessato.
Se non ti sei ancora registrato, cosa aspetti? Registrati subito.

Da ora puoi discutere dei problemi informatici anche sul nostro FORUM

Testo del commento:




  News correlate

 Corso Java @ilsoftware.it
 Il linguaggio Java: lez.10/10
 Il linguaggio Java: lez.9
 Il linguaggio Java: lez.8
 Il linguaggio Java: lez.7
 Il linguaggio Java: lez.6
 Il linguaggio Java: lez.5
 Il linguaggio Java: lez.4


Domini Email SpazioWeb
a partire da € 9.99+IVA annui


  Ultime dal Forum

ciao forum!!!
Offertissima
per chi ha tanti contatti
Discount di codici!!!Prezzi da urlo! :o
DROP SHIP-DROP SHIPPING ITALIA
PTcassh nuova ptc paga entro 5 giorni
Il Migliore
Migliori PTC
Guadagnare fino a $0.02 guardando pubblicità

Comunicazioni / Note Legali / Staff / Collabora / Pubblicità / Contatti


Copyright ZETA TECH S.r.l. (P.IVA : 02387250307), tutti i diritti riservati Utenti Connessi: 591

Programmi


Pagina creata in 0.16sec. Powered by Zeta Tech S.r.l.

Stats v0.1 (0.000sec.)