2016-04-16 1 views
1

Je travaille sur un ancien plugin jEdit qui fonctionnait avec jEdit 4.0. J'essaye de le mettre à jour pour jEdit 5.3. BufferChangeListener et BufferChangeAdapter sont maintenant déconseillés. Je dois utiliser use new BufferListener à la place.Quels sont les méthodes ou propriétés .1 .2 .3 .4 utilisées dans une classe Java?

Lors de la compilation, je rencontre ce qui semble être un problème sans rapport. Il n'aime pas ".1" ou ".2" ou ".3" ou ".4" (par exemple AssetBrowserDockableWindow.1)

AssetBrowserDockableWindow est une classe qui n'a aucune méthode ou classe comme ".1" ou ".2" ou ".3" ou ".4". Et autant que je sache, il n'hérite pas de telles méthodes ou propriétés.

public class AssetBrowserDockableWindow 
    extends JPanel 
    implements EBComponent 

Cependant, dans le code précédent je vois des extraits comme ce qui suit:

private class BufferChangeHandler extends BufferListener { 

    BufferChangeHandler(AssetBrowserDockableWindow.1 x1) { this(); } 

.

SwingUtilities.invokeAndWait(new AssetBrowserDockableWindow.1(this)); 

.

SwingUtilities.invokeLater(new AssetBrowserDockableWindow.2(this)); 

. Je reçois "error: <identifier> expected" à ces chiffres. J'espérais que quelqu'un pourrait expliquer à quoi ces chiffres auraient pu servir. Je suis désolé si c'est quelque chose de basique et je ne cherche pas le bon terme. Si quelqu'un peut fournir un aperçu qui me guiderait dans la bonne direction, je l'apprécierais.

+2

On dirait que "code précédent" a été décompilé à partir d'un fichier .class. Ce sont les identifiants assignés par le compilateur aux classes internes anonymes, bien que normalement le séparateur soit un signe dollar, comme dans 'AssetBrowserDockableWindow $ 2'. Aucune idée pourquoi un point a été substitué. –

+0

Merci @Jim. Votre commentaire me met dans la bonne direction. Vous avez raison de travailler avec du code décompilé. J'ai utilisé l'outil [JD GUI] (http://jd.benow.ca/) pour le décompiler. Après avoir fait quelques recherches sur les termes «corrects», je traite définitivement des classes anonymes. Je peux même voir les fichiers $ 1.class AssetBrowserDockableWindow (et $ 2 ~ $ 4) dans le fichier jar d'origine. –

Répondre

0

Ce "code précédent" a été décompilé des fichiers .class. Ce sont les identifiants assignés par le compilateur aux classes internes anonymes, bien que normalement le séparateur soit un signe dollar, comme dans AssetBrowserDockableWindow $ 2.