Quote Originariamente inviata da Tiime Visualizza il messaggio
definendo il membro di una classe come static, nel momento in cui eseguo più volte il metodo dal quale instanzio l'oggetto che utilizza tale membro, mi sto nella pratica riferendo sempre allo stesso membro o esso non è uguale in quanto richiamato da oggetti di vari programmi?
Un membro static "appartiene" alla classe, non distintamente a ciascun oggetto di quella classe. Quindi un membro static è "unico", ce n'è solamente UNO.


P.S.
Per essere completamente accurati, bisognerebbe fare una precisazione un po "pignola" ma non vorrei confonderti di più le idee. La definizione di una classe è unica ma ... per classloader. Il classloader è l'entità che materialmente "carica" una classe e la rende disponibile alla JVM. Quindi se una classe X ha un static int z; e questa classe fosse caricata da due classloader distinti, in effetti ci sarebbero due definizioni di X distinte, ciascuna con il suo campo statico z.