Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    23

    Modificatore final con istanza di classe

    Salve, ho una piccola questione da sottoporvi:
    Da una classe in cui implemento un'interfaccia grafica creo l'istanza della classe pippo:
    final Pippo p=new Pippo();
    la classe pippo ha vari metodi ed un attributo "pluto" che definisco nel costruttore e viene utilizzato dai vari metodi della classe.
    La mia domanda è:
    se lancio due istanze della mia GUI esse creeranno due istanze separate (indipendenti) di pippo, giusto?

    Un piccolo chiarimento, visto che il modificatore final indica che un oggetto è costante, la variabile pluto contenuta nell'oggetto può variare?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Modificatore final con istanza di classe

    Originariamente inviato da Y2J
    visto che il modificatore final indica che un oggetto è costante
    No. Indica solo che la variabile 'p' non può essere modificata (nel senso di assegnarci qualcos'altro) successivamente. E' il valore che è contenuto nella variabile 'p' (il reference) che diventa "costante".
    Ma sull'oggetto referenziato non c'è alcuna restrizione. Non esistono oggetti "costanti" (esistono oggetti che sono eventualmente "immutabili" ma dipende dalla loro implementazione).

    Ammesso che Pippo sia "mutabile" (ovvero abbia metodi che alterano lo "stato" dell'oggetto), il final sulla variabile 'p' non ha alcuna implicazione su ciò che si può fare con l'oggetto e il suo "stato".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    23
    grazie andbin,
    quindi se lancio due istanze della mia gui ognuna delle quali lancia un'istanza di pippo, le singole istanze della gui non potranno accedere all'istanza di pippo creata dall'altra, vero?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Y2J
    quindi se lancio due istanze della mia gui ognuna delle quali lancia un'istanza di pippo, le singole istanze della gui non potranno accedere all'istanza di pippo creata dall'altra, vero?
    Beh ma questo non centra assolutamente nulla con il final ...... se una classe A ha un campo di "istanza" di tipo B e creando N istanze di A per ogni istanza si assegna un oggetto B distinto a quel campo (e non c'è alcun tuo codice che "sovverte" questa cosa subito o a causa di altri metodi), è ovvio che ogni istanza di A ha il "suo" oggetto B.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.