Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente bannato
    Registrato dal
    Nov 2007
    residenza
    Acicatena (Catania)
    Messaggi
    1,854

    Esempio di costruttore!

    Ragazzi...sto studiando JAVA e ho una slide che mi da l'esempio di come si crea un costruttore:

    codice:
    public class FintoCostruttore {
    int x=7;
    // E' POSSIBILE INIZIALIZZARE UN ATTRIBUTO
    // PRIMA DELLA CREAZIONE DI UN OGGETTO DELLA SUA CLASSE
    public FintoCostruttore() { x=0;} // VERO COSTRUTTORE
    public void FintoCostruttore() { x=5;}// FINTO COSTRUTTORE
    public String toString() { return "valore di x "+x;}
    public static void main(String args[]){
    FintoCostruttore oggetto=new FintoCostruttore();
    System.out.println(oggetto.toString());
    oggetto.FintoCostruttore();
    System.out.println(oggetto.toString());
    } }
    D:\>java FintoCostruttore
    valore di x 0
    valore di x 5

    Perchč tale codice mi stampa appunto x=0 e x=5 e non 0 per entrambi?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Riposto il codice un po' indentato meglio e con i numeri di linea per capirci.

    codice:
    01 public class FintoCostruttore {
    02    int x=7;
    03 
    04    // E' POSSIBILE INIZIALIZZARE UN ATTRIBUTO
    05    // PRIMA DELLA CREAZIONE DI UN OGGETTO DELLA SUA CLASSE
    06 
    07    public FintoCostruttore() { x=0;} // VERO COSTRUTTORE
    08    public void FintoCostruttore() { x=5;}// FINTO COSTRUTTORE
    09    public String toString() { return "valore di x "+x;}
    10    public static void main(String args[]){
    11       FintoCostruttore oggetto=new FintoCostruttore();
    12       System.out.println(oggetto.toString());
    13       oggetto.FintoCostruttore();
    14       System.out.println(oggetto.toString());
    15    }
    16 }
    Al di lā del fatto che chi ha scritto quella slide meriterebbe di essere preso a calci solo per aver coniato il termine improprio "finto costruttore" (non esistono FINTI COSTRUTTORI, in nessun linguaggio di programmazione, che io sappia). Introdurre concetti sbagliati č il modo migliore per confondere le idee.

    In Programmazione Orientata agli Oggetti si parla di metodi costruttori (o costruttori) e metodi generici (o, semplicemente, metodi).

    Alla riga 07 definisci il (l'unico) costruttore della classe.
    Alla riga 08 definisci uno dei 3 metodi della classe.

    Alla riga 11 viene richiamato il costruttore (istruzione new: l'unica istruzione in grado di richiamare un costruttore). Dopo tale istruzione "x" vale 0.

    Alla riga 12 stampi il valore di "x"

    Alla riga 13 richiami il metodo definito alla riga 08. Dopo tale istruzione "x" vale 5.

    Alla riga 14 stampi il valore di "x".

    Ciao.
    "Perchč spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente bannato
    Registrato dal
    Nov 2007
    residenza
    Acicatena (Catania)
    Messaggi
    1,854
    Ottima spiegazione!
    Grazie!

    PS. Ora vado dal mio prof di linguaggi e lo prendo a calci!!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.