想象一下,你有一个这样的 Java 代码:
public class MyClass {
public static Object doSmthg(Object A,Object B){
if(smthg){ //if is given has an example, it can be any thing else
doSmthg;
GOTO label;
}
doSmthg;
label;
dosmthg1(modifying A and B);
return an Object;
}
}
我正在自动生成代码。当生成器在生成 goto 的那一刻到达时(并且它不知道它在 if 块中),它不知道之后会发生什么。
我尝试使用标签,中断,继续,但这不起作用。
我尝试使用内部类(执行 dosmthg1),但 A 和 B 必须声明为 final。问题是必须修改 A 和 B。
如果没有其他解决方案,我将不得不在我的生成器中传播更多知识。但我更喜欢更简单的解决方案。
有任何想法吗 ?
提前致谢。