可能的重复:
创建接口的“对象”
我是 Java 新手。根据我的理解:
- 我们不能实例化一个
Interface
. 我们只能实例化class
实现了 的ainterface
。 - 关键字用于从
new
类创建对象。
但是,当我阅读一些Java程序的源代码时,我发现有时会实例化一个接口。例如:
示例 1:
JButtonObject.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
//codes
}
});
示例 2:
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
//codes
}
});
在上面的例子中,ActionListener 和 Runnable 都是 Java 接口。我可以知道为什么它们可以在这些代码中实例化吗?
实例化接口的目的是什么?参考这个例子,似乎我们应该创建一个实现接口的类的实例。