public void Message() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Hello it is working");
}
}
// Message()是類中的方法。我可以在主方法或任何方法中添加一個ActionListener()嗎?
public void Message() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Hello it is working");
}
}
// Message()是類中的方法。我可以在主方法或任何方法中添加一個ActionListener()嗎?
所有方法都必須在一個類中分別聲明。簡而言之,方法是某個類的對象可以做的事情,而在另一種方法中定義它們是沒有意義的。所以在你的情況下,
public void Message(){
}
@Override
public void actionPerformed(ActionEvent e){
JOptionPane.showMessageDialog(null, "Hello it is working");
}
編輯:這篇文章值得一讀。我沒有關於lambda表達式的知識,但它可能是你正在尋找的東西:) Does Java support inner/local/sub methods?
在Java中,嵌套方法是不允許的!
爲了override
actionPerformed
方法,你需要implement
的ActionListener
接口。
不可以。我們不能在java中創建嵌套方法。 嘗試閱讀關於actionlisteners。 :)
由於Java 8方法可以使用lambdas嵌套。 java中的方法可以嵌套[...]嗎? 不,這不可能。
你可以得到最接近的事是:
class Name {
void methodOne() {
class InnerClass {
void methodTwo() {
}
}
}
}
也就是說,在一個方法定義的內部類中定義的第二種方法。
可以聲明內部類中的靜態方法,所以你不必調用新
你不能聲明裏面的Java方法方法,讓你上面貼的代碼是無效的。 – Jesper
爲了讓你的例子工作,你需要'實現ActionListener',否則你會得到一個編譯器錯誤 – MadProgrammer
請解釋你想要做什麼,以及爲什麼你想要放* * ActionListener *裏面*任何方法*。 –