jsp页面中,<%! %>的感叹号是干什么用的?



jsp页面中,<%! %>的感叹号是干什么用的?

2011-08-14 21:07 friendsfriend  |  分类:其他编程语言  |  浏览4578次
我从网上找的代码,生成验证码图片用的,如下,去掉<%! 旁边的感叹号后就报错了,这个感叹号代表什么意思啊?
<%@ page contentType="image/jpeg"%>
<%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%>
<%!
	Color getRandColor(int fc, int bc) {//给定范围获得随机颜色
		Random random = new Random();
		if (fc > 255) fc = 255;
		if (bc > 255) bc = 255;
		int r = fc + random.nextInt(bc - fc);
		int g = fc + random.nextInt(bc - fc);
		int b = fc + random.nextInt(bc - fc);
		return new Color(r, g, b);
	}
%>
……
2011-08-14 21:35 提问者采纳
<%!%>是声明标签
因为Jsp页在到tomcat的时候会被编译为java文件
jsp页面里面的所有东西都会包含在一个方法里
如果不用声明标签去声明这是个方法
就会报错了
因为方法里面不能有方法
提问者评价
谢谢你,谢谢大家啊
2011-08-14 21:15 lyl7120  | 四级
<%! %>一般用于一行Java代码,一般常见于变量的定义。
<% %>一般用于多行java代码,即代码块。
你的程序很明显是“一行”,注意java语言中“一行”的概念不是编辑器中显示的一行,而是编译器认可的“一行”。
如:
int
i
=
10
;
看上去是5行,但编译器认为是“一行”
java中“行”的分隔符一个是“;”,另一个就是“{}”,即复合语句。

jsp页面中,<%! %>的感叹号是干什么用的?

2011-08-14 21:07 friendsfriend  |  分类:其他编程语言  |  浏览4578次
我从网上找的代码,生成验证码图片用的,如下,去掉<%! 旁边的感叹号后就报错了,这个感叹号代表什么意思啊?
<%@ page contentType="image/jpeg"%>
<%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%>
<%!
	Color getRandColor(int fc, int bc) {//给定范围获得随机颜色
		Random random = new Random();
		if (fc > 255) fc = 255;
		if (bc > 255) bc = 255;
		int r = fc + random.nextInt(bc - fc);
		int g = fc + random.nextInt(bc - fc);
		int b = fc + random.nextInt(bc - fc);
		return new Color(r, g, b);
	}
%>
……
2011-08-14 21:35 提问者采纳
<%!%>是声明标签
因为Jsp页在到tomcat的时候会被编译为java文件
jsp页面里面的所有东西都会包含在一个方法里
如果不用声明标签去声明这是个方法
就会报错了
因为方法里面不能有方法
提问者评价
谢谢你,谢谢大家啊
评论(3)  |  28  0
取消 发布
zh369852264 2014-9-11 23:10
说的是不错,可最后一句有点........ 回复
skitte 2014-5-11 22:38
确实方法要写在这个标签里面。 回复
L9237 2012-10-26 13:38
这位老师答得真好:) 回复

tuoxingzhou | 四级 采纳率30%

擅长: JAVA相关 数据库DB 其他编程语言

感叹号的相关知识

  • 2009-07-06DNF组队后队员头像左下角有一个电脑符号和一个感叹号 是我的网络有... 16
  • 2010-02-24感叹号等符号的符号由来 6
  • 2011-05-02感叹号造句 72
  • 2007-05-31感叹号的作用 497
  • 2014-03-26dnf交易头像有感叹号
更多关于 感叹号的问题>>

其他5条回答

2011-08-14 21:15 lyl7120  | 四级
<%! %>一般用于一行Java代码,一般常见于变量的定义。
<% %>一般用于多行java代码,即代码块。
你的程序很明显是“一行”,注意java语言中“一行”的概念不是编辑器中显示的一行,而是编译器认可的“一行”。
如:
int
i
=
10
;
看上去是5行,但编译器认为是“一行”
java中“行”的分隔符一个是“;”,另一个就是“{}”,即复合语句。

你可能感兴趣的:(jsp页面中,<%! %>的感叹号是干什么用的?)