首页 > 代码库 > java解惑

java解惑

谜题45:令人疲惫不堪的测验
        收获:
        (1)递归调用的先序便利二叉树,以后在理解递归时可以做出书上所示的递归二叉树。这个图的好处是,指出了递归的深度+递归叶子层+调用的顺序(通过在每条线加上调用序号)。
        (2)JVM的栈深度默认是1024;这也就导致本题的线序遍历二叉树边数过多,永远不会抛出stackoverflow的exception。
        (3)如何设置JVM,一开始我都不知道,原来是用java命令。
        相应参考资料:
            http://hi.baidu.com/sdausea/item/f4671be89a7ec40d570f1d2d
            http://blog.163.com/sejin%40126/blog/static/82750455201091271810757/

谜题44:删除类
    收获:
        (1)类删除,导致直接或者间接引用该类的地方会抛出noclassdeffoundexception;
        (2)我们正常在进行程序分析时,是运行时分析;按照运行时的角度重复程序的执行过程。其实,在java中,程序编译成字节码后,运行之前,JVM还会对程序有一些其他的处理,这些处理不影响程序运行的结果。我将这类处理,比作C语言中的预处理,它们起着同样的作用。