2016-04-16 6 views
1

jEdit 4.0で動作していた古いjEditプラグインで作業しています。私はjEdit 5.3のためにそれを更新しようとしています。プラグイン(.jar)を更新する必要がある主な理由の1つがBufferChangeListenerであり、BufferChangeAdapterは廃止予定です。代わりに新しいBufferListenerを使用する必要があります。Javaクラスのメソッドまたはプロパティのように使用される.1 .2 .3 .4は何ですか?

コンパイル時に、私は無関係の問題と思われるものを実行します。 ".1"や ".2"や ".3"や ".4"(例:AssetBrowserDockableWindow.1)のようなものはありません(AssetBrowserDockableWindow.1)

AssetBrowserDockableWindowは ".1"のようなメソッドやクラスを持たないクラスです。 「.2」または「.3」または「.4」です。そして、私が言う限り、それはそのような方法や性質を継承しません。

public class AssetBrowserDockableWindow 
    extends JPanel 
    implements EBComponent 

はしかし、前のコードでは、私は次のようなスニペットを参照してください。

private class BufferChangeHandler extends BufferListener { 

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

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

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

this.editPane.getTextArea().addFocusListener(new AssetBrowserDockableWindow.3(this)); 

私はこれらの数字で "error: <identifier> expected" を取得します。私は、誰かがその数字がどんなものだったのかを説明できると思っていました。基本的なものであり、正しい言葉を求めていないのは残念です。誰かが正しい方向に私を指すような洞察力を提供することができれば、私はそれを感謝します。

+2

「前のコード」が.classファイルから逆コンパイルされたように見えます。これはコンパイラによって匿名の内部クラスに割り当てられた識別子ですが、セパレータは通常AssetBrowserDockableWindow $ 2のようにドル記号です。なぜドットが置換されたのか分かりません。 –

+0

ありがとう@ジム。あなたのコメントは私を正しい方向に向ける。私は逆コンパイルされたコードで作業しているのは間違いありません。私は[JD GUI](http://jd.benow.ca/)ツールを使って逆コンパイルを行いました。 「正しい」用語についていくつかの調査をした後、私は間違いなく匿名のクラスを扱っています。元のjarファイルにAssetBrowserDockableWindow $ 1.classファイル(と$ 2〜$ 4)も表示されます。 –

答えて

0

"以前のコード"は.classファイルから逆コンパイルされていました。これは、AssetBrowserDockableWindow $ 2のように、区切り記号は通常ドル記号ですが、コンパイラによって匿名の内部クラスに割り当てられた識別子です。

関連する問題