请教各位大侠,下面这段java的代码,for循环里面的两个语句,为什么从第一个语句到第二个语句,对象solverinstance某些属性值会发生变化。 且调试的时候,我如果用“步入”,就直接从第一个语句跳到了第二个语句,我用的IDE是netbeans,只不过把java的类库给过滤了,并没有过滤自己的代码,不明白为什么solveinstance一些属性值发生变化了。
for(AbstractPricingProblemSolver<T, U, V> solverInstance : bundle.solverInstances){
Future<Void> f=executor.submit(solverInstance);
futures.add(f);
}
executor.submit()执行的是下面的操作,没有看出来有对solverinstance操作啊。
public <T> Future<T> submit(Callable<T> task) {
if (task == null) throw new NullPointerException();
RunnableFuture<T> ftask = newTaskFor(task);
execute(ftask);
return ftask;
}