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 *里面*任何方法*。 –