- 浏览: 59961 次
- 性别:
- 来自: 深圳
最新评论
-
jaystarba:
谢了 楼主
你的抛异常那句很给力!
java 空字符串与null区别
文章列表
1,空指针错误 java.lang.NullPointerException
使用基本的JAVA数据类型,变量的值要么已经是默认值,如果没有对其正常赋值,程序便不能通过编译,因此使用基本的JAVA数据类型(double,float,boolean,char,int,long)一般不会引起空指针异常。由此可见,空指针异常主要跟与对象的操作相关。
下面先列出了可能发生空指针异常的几种情况及相应解决方案:
不管对象是否为空就直接开始使用。
(JSP)代码段1:
out.println(request.getParameter("username"));
描述:
代码段 ...
首先来讲一下step into step over step return的区别:
step into就是单步执行,遇到子函数就进入并且继续单步执行;(F5)
step over是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止, ...
import java.io.*;
public class Test
{
public static void main(String args[])
{
try
{
Process pro=Runtime.getRuntime().exec("hh.exe j2seAPI.chm");
}
catch(Exception ec)
{}
}
}
如果函数要完成的功能很复杂,代码行数很多,导致函数体过长。可将一个函数的功能进行细分,每个小的功能编写一个函数。一般码情况下,每个函数体的代码在30行左右为好。
如果函数没有返回值,则应将返回类型设置为void。如果省略返回类型,按C语言的规定,就会被编译器作为返回int型处理,而不是void类型。为了避免混乱,对于任何函数都要指定其类型。
Struts 2默认会加载类路径下的struts.xml、struts-default.xml、struts-plugin.xml三类文件,其中struts.xml是开发者定义的默认配置文件,struts-default.xml是Struts 2框架自带的配置文件,而struts-plugin.xml则是Struts 2插件的默认配置文件。如果希望Struts 2可以默认加载自己的配置文件,,可以修改Struts2-core-2.1.2.jar压缩文件的org、apache\struts2路径下default.properties文件中的struts.configuration.file ...
JSP有9个内置对象:application、config、out、page、pageContext、request、response、session、exception。
这些内置对象要么是_jspService()方法的形参,要么是_jspService()方法的局部变量,所以JSP页面中只有JSP脚本才可以直接访问它们,JSP声明部分不能直接使用内置对象。
注:只有当页面的page指令的isErrorPage属性为true时,才可以使用exception对象。也就是说,只有异常处理页面对应Servlet时才会初始化exception对象。
param指令主要用于设置参数值,这个指令本身不能单独使用,因为单独的param指令没有实际意义。param指令可以与一下3个指令结合使用:jsp:include、jsp:forward、jsp:plugin。
当与include指令结合使用时,param指令用于将参数值传入被导入的页面;当与forward指令结合使用时,param指令用于将参数值传入被转向的页面;当与plugin指令结合使用时,则用于将参数传入页面中的JavaBean实例或Applet实例。
param指令的使用格式:<jsp:param name="paramName" va ...
实际上,它们很相似,都是采用方法来引入目标页面,通过查看JSP页面所生成Servlet代码可以得出:forward指令使用_jsp_page_context的forward()方法来引入目标页面,而include指令则使用通过JspRuntimeLibrary的include()方法来引入目标页面。区别在于,执行forward时,被forwardfoward的页面将完全代替原有页面;而执行include时,被include的页面只是引入原有页面。简而言之:forward拿目标页面代替原有页面,而include则拿目标页面插入原有页面。
静态导入 include编译指令语法:<%@include file="relativeURLSpec"%>
动态导入 jsp:include动作指令语法:<jsp:include page="{relativeURL|<%=expression%>}" flush="true"/>
1.静态导入时将导入页面的代码完全融入,两个页面融合成一个整体Servlet;而动态导入则在Servlet中使用include方法来引入被导入页面的内容。
2.静态导入时被导入页面的编译指令会起作用;而动态导入时被导 ...
jsp脚本将转换成Sevlet里_jspService方法的可执行性代码。因此,jsp小脚本部分也可以声明变量,但在jsp脚本部分声明的变量时局部变量,将不能使用private等访问控制符修饰,也不可使用static修饰。
不仅jsp小脚本部分会转换成_jspSevice方法里的可执行代码,jsp页面里的所有静态内容都将由_jspService方法里输出语句来输出,这就是jsp脚本可以控制jsp页面中静态内容的原因,由于jsp脚本将转换成_jspService方法里的可执行性代码,而java语法不允许在方法里定义方法,所以jsp脚本里不能定义方法。
Java提供了两类主要的异常:runtime exception和checked exception。所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类衍生出来的。
它们的不同之处表现在两方面:机制上和逻辑上。
一、机制上
它们在机制上的不同表现在两点:1.如何定义方法;2. 如何处理抛出的异常。请看下面CheckedException的定义:
public class CheckedE ...
由于JSP声明语法定义的变量和方法对应于Servlet的成员变量和方法,所以JSP声明部分定义的变量和方法可以使用private、public访问控制符修饰,也可使用static修饰,将其变成类属性和类方法,因为抽象方法将导致JSP对应的Servlet编程抽象类,从而导致无法实例化。