发表时间:2009-02-25
asin 写道 pipilu 写道 jieyuan_cg 写道 pipilu 写道 加罗德蓝 写道 第一题是 a:1
b:1 ie6 + tomcat6.0 的测试结果,第三次访问开始a才是2 看来你试都试错了。。 肯定是:a:2 b:1 你验证过吗?不要乱说话! ![]() 然后,我又多试了几次,有你说的那种结果,但也有第四次又从a=1 b=1开始的,有一次在第8次时从a=1 b=1开始。 我还没想出一个能够确定的解释。但是这题的答案肯定是:a=2 b=1。在resin下是正常的。 上面asin解释的也很牵强。 你对这个现象有没有一个合理的解释? <%! int a=0; %> <% int b=0; System.out.println("刷新页面..."); System.out.println("a的值: "+a); System.out.println("b的值: "+b); a++; b++; System.out.println("a++的值: "+a); System.out.println("b++的值: "+b); %> a:<%=a %> b:<%=b %> 到后台去看... asin兄的解释应该是对的。这样的问题以前还真是没有注意过。 后台打印,第一次,第二次的值依然是a=1,b=1,呵呵~跟缓存没有关系了吧~ |
|
发表时间:2009-02-25
gosin 写道 jieyuan_cg 写道 pipilu 写道 加罗德蓝 写道 第一题是 a:1
b:1 ie6 + tomcat6.0 的测试结果,第三次访问开始a才是2 看来你试都试错了。。 肯定是:a:2 b:1 你验证过吗?不要乱说话! 这东西还要验证么, jsp生成的servlet 一个是全局变量,一个是局部变量而已 又一个凭空想象者!!! |
|
发表时间:2009-02-25
测试了一下,IE浏览器 第一次,是a=1,b=1, 第二次,是a=1,b=2, 出现第二次b=1是 |
|
发表时间:2009-02-26
最新测试结果:
如果第一次访问时jsp已编译成.class文件,则第一次a=1,b=1;第二次a=1,b=2 如果第一次访问时jsp未编译成.class文件,则第一次a=1,b=1;第二次a=1,b=1 |
|
发表时间:2009-02-28
有的不知道选择什么。
|
|
发表时间:2009-02-28
直接把servlet源代码研究一下不更好么.
|
|
发表时间:2009-03-10
刷新页面...
a的值: 0 b的值: 0 a++的值: 1 b++的值: 1 刷新页面... a的值: 0 b的值: 0 a++的值: 1 b++的值: 1 刷新页面... a的值: 1 b的值: 0 a++的值: 2 b++的值: 1 这个是在工作目录被clean的情况下,如果工作目录非空,重启后,得到的结果是 a=2 b=1 注:Tomcat5.0的行为 |
|
发表时间:2009-03-10
记忆性的东西比较多,考不到学习能力和创造能力,开发的知识领域总在变,如果有一天Servlet不用了,这些就没有意义了
|
|
发表时间:2009-06-11
笔试的题目防不胜防,还是得多积累,研究一下楼主的题,希望自己以后面试时候能遇上
|
|
发表时间:2009-06-22
不要这样,做人要有素质。
|