我有:
public class CustomSheet extends XSSFSheet implements customSheetsI
在XSSFSheet中有一个方法,
public XSSFWorkbook getWorkbook() {
return (XSSFWorkbook)this.getParent();
}
在我的 customSheet 类中,我想覆盖 getWorkbook 方法(或添加新的 getCustomWorkbook),将工作簿转换为 customWorkbook。我可以在接口(interface)的每个实例中执行此操作,但我想利用 Java 8 并直接在接口(interface)中编写方法。
像这样
public interface customSheetsI<T extends XSSFSheet>
{
default LogChunkWorkbook getLogWorkbook() {
return (LogChunkWorkbook)getWorkbook();
}
..
使用父类(super class) XSSFSheet 中的 getWorkbook。但它不像我写的那样有效。它不知道 getWorkbook。我该怎么做?
最佳答案
您也可以在您的接口(interface)中添加getWorkbook()
方法,并在CustomSheet
中实现。您将能够像这样使用它:
public interface customSheetsI {
default String getLogWorkbook() {
return (String) getWorkbook();
}
YourReturnType getWorkbook();
}
关于Java 8 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49512816/