Ho un jar java che ho decompilato con il permesso dello sviluppatore originale che dobbiamo utilizzare fino a quando non ci può ottenere una copia del codice sorgente. Ho incontrato un membro di una classe che è simile al seguente:
Classname.access$002(Param1, Param2);
Classname è corretto, ma il accesso $ 002 non guarda a destra (ci sono un paio di altri come questo se non con i nomi di accesso $ 204 e con altri numeri aggiunti alla fine), e mi chiedo se questo significhi qualcosa in Java o se è perché l'operazione di decompilazione era incompleta.
Sto usando JD-GUI per decompilare le classi.
Vale anche la pena ricordare che non esistono metodi con la stessa firma dell'accesso $ 002, almeno nella classe Nome classe.
Questi link possono aiutare: http://www.retrologic.com/innerclasses.doc7.html e http://stackoverflow.com/questions/6167326/java-class-name-containing-dollar-sign - il primo link menziona che possono essere metodi creati come parte delle classi di accesso interne per aiutare la JVM a comprendere il raggruppamento di classi che possono accedere ad alcuni membri. – birryree
Il termine tecnico è accessoria sintetica. – McDowell