【发布时间】:2015-05-21 05:16:15
【问题描述】:
下面的简单 java 代码发送 java.lang.VerifyError: 操作数堆栈上的错误类型 异常
public class TestJavaCodes {
int parentData = 0;
public void init() {
A ob = new B();
}
public static void main(String[] args) {
TestJavaCodes testJavaCodes = new TestJavaCodes();
testJavaCodes.init();
}
public static class A {
public A(MyLambdaFunc lambdaFunc) {
}
}
public class B extends A {
public B() {
super((data1, type) -> {
parentData = 1;
});
}
}
@FunctionalInterface
public static interface MyLambdaFunc {
public void onData(String data, int type);
}
}
如果我删除代码
parentData = 1
来自B的构造函数,异常不会来。
谁能说出原因?
【问题讨论】: