<HTML>
<BODY>
<%!int x=7;%>
<%int x=5;%>
x=<%=x%>,<%=this.x%>
</BODY>
</HTML>
a) x=7,5
b) x=7,7
c) x=5,7
d) x=5,5答案是C 我不明白为什么是C,谁能解释下啊? 越详细越好
<BODY>
<%!int x=7;%>
<%int x=5;%>
x=<%=x%>,<%=this.x%>
</BODY>
</HTML>
a) x=7,5
b) x=7,7
c) x=5,7
d) x=5,5答案是C 我不明白为什么是C,谁能解释下啊? 越详细越好
解决方案 »
- Extjs DataView 图片显示不出 进来就有分 呀 谢谢大家了
- 为什么在tomcat中传递的路径都变为C:\fakepath\下的文件啦!!??
- ibatis 异常 望高人指点!!!!!!
- 关于两个JSP分页的问题(一个是只显示10个分页,二是指定页码跳转)
- hibernate配置出现问题,竟然连Configuration对象都生成不了。
- 简单文件上传代码
- jsp如何与mysql联接?
- 能否给一份jsp与sqlserver2000的数据库程序源代码!
- Extjs 2 日期控件在chrome出现问题,全屏
- 请问刚开始学习JSP和JAVA,用什么书好?
- 求一条HQL查询语句,谢谢了!
- 谁能给我讲讲分布式?
楼主【tjzero_sapce】截止到2008-07-19 13:06:39的历史汇总数据(不包括此帖):
发帖的总数量:25 发帖的总分数:380 每贴平均分数:15
回帖的总数量:17 得分贴总数量:1 回帖的得分率:5%
结贴的总数量:23 结贴的总分数:340
无满意结贴数:6 无满意结贴分:120
未结的帖子数:2 未结的总分数:40
结贴的百分比:92.00 % 结分的百分比:89.47 %
无满意结贴率:26.09 % 无满意结分率:35.29 %
值得尊敬
<%int x=5;%> //这个是方法的局部变量,在方法中定义因此
<%=x%>//这个输出是在方法中输出局部变量的值
, <%=this.x%> //这个输出属性的值。所以第一个输出局部变量值5,第二个this.x输出全局变量值7.
这句话定义的变量是类中的成员变量,jsp文件经过解析之后得到一个对应的类,<%!int x=7;%> 定义了这个类中的变量int x=7;
而你通过<%int x=5;%> 定义的变量是方法jsp对应的Class中 _jspService()方法中定义的一个临时变量x,执行输出是在
_jspService()方法中进行的,所以x访问到的是x=5;这个x,成员变量x被它屏蔽了。而通过this.x访问的是x=7这个变量。
implements org.apache.jasper.runtime.JspSourceDependent {int x=7;
……
public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {
……
int x=5;
……
out.write("x= ");
out.print(x);
out.write(',');
out.write(' ');
out.print(this.x);
out.write("\n");
}
……
}自己可以做个实验分析一下。