Java Lambda不会从单独的文件重写接口方法 当函数接口位于lambda覆盖它的同一个文件中时,它可以正常编译 当函数接口位于单独的文件中且基类实现它时,它无法使用Base is not abstract编译,并且不会覆盖Interface3error中的抽象方法multiplyFour(int) 有什么不对劲吗?为什么lambda在第二种情况下不重写该方法
你的第一个例子是:Java Lambda不会从单独的文件重写接口方法 当函数接口位于lambda覆盖它的同一个文件中时,它可以正常编译 当函数接口位于单独的文件中且基类实现它时,它无法使用Base is not abstract编译,并且不会覆盖Interface3error中的抽象方法multiplyFour(int) 有什么不对劲吗?为什么lambda在第二种情况下不重写该方法,java,lambda,interface,Java,Lambda,Interface,你的第一个例子是: public class Base { public class Base implements Interface3 { 它不实现接口1 但是,您的第二个示例有: public class Base { public class Base implements Interface3 { 哪个实现了Interface3 不确定您在这里试图做什么,但这是预期行为: 接口 当类实现接口时,必须将所有方法实现到类中 例如: public interface IFoo {
public class Base {
public class Base implements Interface3 {
它不实现接口1
但是,您的第二个示例有:
public class Base {
public class Base implements Interface3 {
哪个实现了Interface3
不确定您在这里试图做什么,但这是预期行为:
接口
当类实现接口时,必须将所有方法实现到类中
例如:
public interface IFoo {
void bar();
}
和类别:
public class FooImpl implements IFoo {
// must implement bar method in IFoo
public void bar() {
System.out.println("I did something");
}
}
在主方法中使用lambda并不构成实现接口方法
修理
只需删除实现接口3
,您不需要在类中实现接口就可以使用它。您的第一个示例包括:
public class Base {
public class Base implements Interface3 {
它不实现接口1
但是,您的第二个示例有:
public class Base {
public class Base implements Interface3 {
哪个实现了Interface3
不确定您在这里试图做什么,但这是预期行为:
接口
当类实现接口时,必须将所有方法实现到类中
例如:
public interface IFoo {
void bar();
}
和类别:
public class FooImpl implements IFoo {
// must implement bar method in IFoo
public void bar() {
System.out.println("I did something");
}
}
在主方法中使用lambda并不构成实现接口方法
修理
只需删除实现接口3
,你不需要在类中实现接口就可以使用它。你不需要实现它就可以使用类Base
不需要实现该类中lambda匹配的接口。你不需要实现它就可以使用类Base
不需要实现该类中lambda匹配的接口班级比赛。