重複の可能性:
インターフェースの「オブジェクト」の作成
私はJavaを初めて使用します。私の理解に基づく:
- をインスタンス化することはできません
Interface
。class
を実装するをインスタンス化することしかできませんinterface
。 - キーワードは、
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インターフェースです。これらのコードでインスタンス化できる理由を教えてください。
インターフェイスをインスタンス化する目的は何ですか?この例を参照すると、インターフェースを実装するクラスのインスタンスを作成する必要があるようです。