【发布时间】:2015-12-22 21:05:23
【问题描述】:
我有一个带有一个抽象方法的抽象类。如何使用 lambda 表达式来实例化它。它不能成为接口,因为它扩展了一个类。
public class Concrete<T> {
// Has a bunch of predefined methods.
}
public abstract class Abstract<T> extends Concrete<T> {
public T getSomething();
// Uses inherited methods from Concrete class
}
public class Driver {
public static void main(String[] args) {
System.out.println(new Abstract<String>() {
public String getSomething() {
// Returns something using inherited methods from Abstract
// Class and Concrete Class
}
});
}
}
【问题讨论】:
-
在这种情况下,包含一个 MCVE 会很有帮助,其中您有一些超类、抽象类和一个您希望简化为 lambda 表达式的实例化
-
为什么不能为 getSomething() 创建一个接口并让抽象类扩展 Concrete 并实现接口?