JAVA中<%! %>和<% %>的区别?

JAVA中<%! %>和<% %>的区别?

谢谢

你问的应该是jsp种的吧!
<%! %>是jsp中嵌入的java 声明。
用于声明脚本语言变量或方法。
而<% %>是jsp种嵌入的java 脚本代码片段。
最主要的区别是jsp文件在编译成java时他们的构造时间不一样。先构建声明块,然后是jsp的page、request等内建对象,然后才是java代码块。所以<%! %>中不可以使用JSP内建对象,而<% %>中的代码可以使用jsp的page、request等内建对象。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-20
jsp 都是解析成.java文件`

具体代码请看
如果你写
<%int a=1;%>

生成的代码是

public class xxx_jsp {

public void doProcess(...) ..
{
int a =1; //这是你在jsp 里的代码
}
}

如果你写的是
<%!
int a=1;
%>

public class xxx_jsp {
int a =1; //这是你在jsp 里的代码

public void doProcess(...) ..
{
}
}

这就是区别 聪明的楼主能看明白吧本回答被提问者和网友采纳
第2个回答  2008-03-28
JSP中<%! %>是被用来声明变量的,而<%%>是用来写Java代码的。
其实<%%>中也可以定义变量,只不过是个官方建议和设计时的问题。
第3个回答  2008-03-28
这是jsp中的吧,一个是用来声明变量的,一个是写java code 的.
第4个回答  2008-03-28
<%! %> 没有具体意义 加了"!"号以后 <% %>中的代码讲无法正确通过编译,造成错误.<% %>中是在页面中书写Java代码的的地方.
如需要注释<%- 注释 -%> 请用这种方式.
相似回答