f.addMouseMotionListener(new MouseAdapter() {
public void mouseDragged(MouseEvent e)
{
String s="Mouse dragging :X = "+e.getX()+" Y= "+e.getY();
tf.setText(s);
}
});
我读到我们不能为抽象类实例化对象......但在这里我们正在创建
new MouseAdapter()
..有人能解释一下这些匿名类是如何完成的吗..谢谢。
最佳答案
您不是在创建 MouseAdapter
的实例,而是在创建从 MouseAdapter
继承的匿名类的实例。
更详细地说,可以这样写:
class Goo extends MouseAdapter { public void mouseDragged(){...} };
f.addMouseMotionListener(new Goo());
关于java - 我们可以为接口(interface)和抽象类创建对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6594609/