作为 Java 的初学者,我被告知使用“new”关键字会导致调用构造函数,从而为对象分配内存。如果确实如此,那么当我们编写时会发生什么:
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
// do something.
}
});
??
如果分配内存,是不是违反了“接口不能实例化”的概念?新的 ActionListener 是否没有内存分配?如果没有分配内存,当我们没有指定任何对象引用时,它是如何访问的?或者,这是否只是“在‘新’处分配内存”规则的一个例外?