|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2000
Messaggi: 501
|
[Java] Come ricavare tutti i riferimenti ad una istanza
Potrebbe essermi molto utile ricavare in modo preciso tutti i riferimenti ad una istanza specifica. Come potrei fare in Java?
Banalmente, se avessi una situazione del genere: Codice:
Oggetto a=new Oggetto(); Oggetto b=a; Oggetto c=a; Esistono magari delle istruzioni specifiche di Java o dei tool esterni? Ho provato con il profiler VisualVM, ma non sono riuscito a ricavare questa informazione, forse sbaglio io ad usarlo? Praticamente riesco a vedere quante istanze ho di "Oggetto" (in questo caso 1), ma non vedo che è referenziato da 3 variabili, anche se c'è la voce References, che riporta <no references> |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Dec 2000
Messaggi: 501
|
Analizzando meglio VisualVM forse riesco a ricavare quest'informazione.
Non è agevole come me l'aspettavo, ma è già qualcosa. Resto comunque aperto a nuove proposte |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Palermo
Messaggi: 4913
|
Ciao, non ho capito se devi fare la ricerca di un riferimento ad un oggetto leggendoti un file sorgente oppure il tuo scopo è trovare un IDE che ti aiuti a leggere facilmente una classe java.
Nel secondo caso con Netbeans ad esempio, sottolineando un riferimento, ti mostra delle righine marroni a sx per identificare tutti i riferimenti ad una variabile. Ciao
__________________
Sun Certified Java Programmer - Sun Certified Web Component Developer - Sun Certified Business Component Developer |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Dec 2000
Messaggi: 501
|
Beh come IDE uso Eclipse, mi ci trovo abbastanza bene.
Il discorso che facevo è di individuare in qualsiasi modo tutti i possibili riferimenti ad un oggetto specifico. Ho provato a farlo a runtime monitorando con un profiler, bene o male fa il suo lavoro, ma non comprende tutte le casistiche (ovviamente dipende dallo stato in cui si trova il sw in quel momento). Non so se sia possibile ricavare questa informazione partendo dal file sorgente (cioè, se lo faccio io a mano sicuramente ci riesco, ma è un lavoro lunghissimo e non è comunque a prova di errore :P) |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:18.



















