2017-07-07 12 views
1
public void Message() { 
@Override 
public void actionPerformed(ActionEvent e) { 
    JOptionPane.showMessageDialog(null, "Hello it is working"); 
} 

} 

// Message()はクラス内のメソッドです。メインメソッドまたはメソッド内にActionListener()を追加できますか?

+4

を呼び出す必要はありません。 – Jesper

+0

あなたの例がうまく動作するためには、 'ActionListener'を実装する必要があります。そうでなければ、コンパイラエラー – MadProgrammer

+1

を得ます。あなたが何をしたいのか、何らかの理由で* ActionListener * *。 –

答えて

0

すべてのメソッドはクラス内で別々に宣言する必要があります。簡単に言えば、メソッドはあるクラスのオブジェクトができることであり、別のメソッドの中でそれらを定義することは意味がありません。したがってあなたの場合、

public void Message(){ 

} 
@Override 
public void actionPerformed(ActionEvent e){ 
    JOptionPane.showMessageDialog(null, "Hello it is working"); 
} 

編集:この投稿はお読みください。ラムダ式についての知識はありませんが、それはあなたが探しているものである可能性があります:) Does Java support inner/local/sub methods?

0

Javaでは、ネストされたメソッドは許可されていません!

overrideactionPerformedの方法では、implementActionListenerインターフェイスが必要です。

0

いいえ。私はJavaでネストされたメソッドを作成することはできません。 actionlistenersについてお読みください。 :)

0

Java 8のメソッドはlambdasを使用してネストすることができるので、 Javaのメソッドをネストすることはできますか? いいえ、それは不可能です。あなたが得ることができる

最も近いものは次のとおりです。

、この方法で定義された内部クラスで定義された第二の方法である
class Name { 
    void methodOne() { 
     class InnerClass { 
      void methodTwo() { 
      } 
     } 
    } 
} 

あなたは内部クラス内のメソッドがstatic宣言することができますので、あなたは、あなたは、Javaのメソッド内のメソッドを宣言することはできませんので、あなたは上記の投稿のコードは無効である新しい

関連する問題