Bhe oltre a riferirsi all'oggetto corrente per cui
e' stato richiamato il metodo, ma intanto devi capire
il concetto sui membri di dati della classe.
![]()
Bhe oltre a riferirsi all'oggetto corrente per cui
e' stato richiamato il metodo, ma intanto devi capire
il concetto sui membri di dati della classe.
![]()
Nulla, ma e' sempre qualcosa.
Un esempio un po' articolato, in cui i parametri formali non c'entrano niente:
sia "finestra" un oggetto che contiene l'interfaccia grafica della tua applicazione (pulsanti, e cose di questo genere); inoltre hai creato una fantomatica classe "PannelloDiControllo" che vuoi aggiungere alla finestra ogni volta che l'utente deve cambiare qualche opzione. In generale, nella tua applicazione, farai qualcosa del tipo:
avendo poi cura di nascondere o visualizzare p a seconda delle richieste dell'utente.codice:PannelloDiControllo p = new PannelloDiControllo(); finestra.add (p);
Mettiamo che ora tu voglia limitarti ad instanziare p:
facendo si' che l'oggetto includa in se' la logica che gli consente di comparire sul video o nascondersi quando non e' piu' necessario.codice:PannelloDiControllo p = new PannelloDiControllo();
Tralasciamo il modo in cui il pannello sa' quando e' ora di "mettersi in moto", senno' il discorso si complica e gia' mi sto allungando troppo.
Voglio scrivere il metodo che consente al pannello di controllo di aggiungere se stesso a "finestra". Scrivero' qualcosa del tipo:
Come fa l'oggetto a riferirsi a se stesso? Semplice, usa this:codice:private void visualizza() { ... finestra.add (?); // Che ci metto qui? ... }
Spero di non averti confuso le idee...codice:private void visualizza() { ... finestra.add (this); // THIS!!! ... }![]()
Folle e' l'uomo che parla alla luna.
Stolto chi non le presta ascolto.
this serve anche per richiamare un costruttore della classe.
Sun Certified Java Programmer
EUCIP Core Level Certified
European Certification of Informatics Professionals
ok ma poverina penso che adesso si sia confusa...
Cmq penso che intato tu faccia un passo alla volta
e capire il mio esempio poi passare al resto...
Fai qualche prova ricopiando il mio esempio
e lo compili e vedi cosa succede.
Ciao![]()
Nulla, ma e' sempre qualcosa.
Prima di tutto signori miei, ho bisogno di capire cosa intendete per "membri della classe" o in generale per MEMBRI. E' sinonimo di cosa? Di "corpo del metodo"? o.O (una volta chiarito questo potrò rileggere più attentamente le ultime spiegazioni che gentilmente mi avete fornito, e spremere i vostri sopraffini cervelli per ottenere ciò che cerco! è_é ( :P ) Grazie! )
I'm going under (going under)
Drowning in you (drowning in you)
I'm falling forever (falling forever)
I've got to break through
I'm going under
{ GOING UNDER - Evanescence }
Allora fai dieci passi indietro e cerca di capire come prima si definisce una classe...
Ti garantisco che il mio cervello non e' affatto sopraffino
ma sono aiutato da persone che ne sanno piu' di me
e se posso e se mi sento in grado aiuto magari qualcun'altro!!
Ciao![]()
Nulla, ma e' sempre qualcosa.
per membro di una classe si intende un suo campo o un suo metodoOriginariamente inviato da Rei-chan
Prima di tutto signori miei, ho bisogno di capire cosa intendete per "membri della classe" o in generale per MEMBRI. E' sinonimo di cosa? Di "corpo del metodo"? o.O (una volta chiarito questo potrò rileggere più attentamente le ultime spiegazioni che gentilmente mi avete fornito, e spremere i vostri sopraffini cervelli per ottenere ciò che cerco! è_é ( :P ) Grazie! )
Sun Certified Java Programmer
EUCIP Core Level Certified
European Certification of Informatics Professionals
Allora fai dieci passi indietro e cerca di capire
come si definisce una classe e poi passa al resto,
non sono affatto un cervello sopraffino e sono aiutato
da chi ne sa piu' di me e se posso aiuto anche io!!
Ciao![]()
Nulla, ma e' sempre qualcosa.
Dal mio personale punto di vista maurizio2 sei per forza un cervello sopraffino (come il resto di voi) dato che io sono alle primissime armi, sigh!Ad ogni modo:
Allora avevo capito bene, in pratica. Il tuo esempio, maurizio2, ora mi è chiaro. Quello di dekdek di meno ;_; ...! Mi è venuto spontaneo chiedermi: "Per quale motivo un pannello di controllo dovrebbe aggiungersi a finestra? E in che modo precisamente?"per membro di una classe si intende un suo campo o un suo metodo(non fate faccie strane e snervate: si deve pur cominciare dall'ABC ù_u ...! )
I'm going under (going under)
Drowning in you (drowning in you)
I'm falling forever (falling forever)
I've got to break through
I'm going under
{ GOING UNDER - Evanescence }
ti consiglio di scaricarti il manuale di java dal sito di mokabyte.
non preoccuparti del pannelo che si aggiunge a una fienstra è solo per dire che all'interno della classe ti serva avere un riferimento all'oggetto corrrente, e questo riferimento è this.
Sun Certified Java Programmer
EUCIP Core Level Certified
European Certification of Informatics Professionals