FunctionalInterface可以扩展非功能接口类吗?

时间:2015-10-27 13:48:39

标签: java interface mouselistener functional-interface

我此刻正在学习,并且我已经获得了简单(我认为如此)的任务。 我必须使这段代码工作(我无法修改它):

    JButton b = new JButton("Myszą ciśnij");
    b.addMouseListener ( (MousePressListener) e -> System.out.println("ok"));

我相信MousePressListener应该是FunctionalInterface但是,它不能扩展MouseListener。有没有办法解决这个问题,还是我从坏的方面接近它?

1 个答案:

答案 0 :(得分:1)

addMouseListener需要MouseListenerMouseListener有多种抽象方法。因此,lambda表达式不能是MouseListener类型。

我不知道MousePressListener是什么,但如果它是一个扩展MouseListener的接口,它仍然会从MouseListener继承多个抽象方法,所以它不能成为一个功能界面。