易截截图软件、单文件、免安装、纯绿色、仅160KB

Java两种异常模式

Java里有个很重要的特色是Exception ,也就是说允许程序产生例外状况。而在学Java 的时候,我们也只知道Exception 的写法,却未必真能了解不同种类的Exception 的区别。
首先,您应该知道的是Java 提供了两种Exception 的模式,一种是执行的时候所产生的Exception (Runtime Exception),另外一种则是受控制的Exception (Checked Exception)。
所有的Checked Exception 均从java.lang.Exception 继承而来,而Runtime Exception 则继承java.lang.RuntimeException 或java.lang.Error (实际上java.lang.RuntimeException 的上一层也是java.lang.Exception)。
当我们撰写程序的时候,我们很可能会对选择某种形式的Exception 感到困扰,到底我应该选择Runtime Exception 还是Checked Exception ?
其实,在运作上,我们可以通过Class 的Method 如何产生某个Exception以及某个程序如何处理这个被产生来的Exception 来了解它们之间的差异。
首先我们先建立一个Exception
public class CException extends Exception
{
public CException() {}
public CException(String message)
{
super(message);
}
}
然后我们撰写一个可能产生 CException 的 Class
public class testException
{
public void method1() throws CException
{
throw new CException("Test Exception");
}
public void method2(String msg)
{
if(msg == null)
{
throw new NullPointerException("Message is null");
}
}
public void method3() throws CException
{
method1();
}
// 以下省略
// ...
}
在这三个method 中,我们看到了method1 和method2 的程序码内都会产生Exception,但method3 的程序码中(大括号内),并没产生Exception,但在method3 的定义中,暗示了这个method 可能产生CException。 呼叫method1() 的程序,必须将method1() 包含在try 与catch 中,如:
public class runtest
{
// ....
public static void main(String argv[])
{
testException te = new testException();
try
{
te.method1();
}
catch(CException ce)
{
// ....
}
}
// ...
}
虽然包含在try 与catch 中,并不表示


相关文档:

Java论坛收集

最强烈推荐-我的java收藏夹(内有国内最好的java论坛)
www.chinajavaworld.com -论坛人很多,高手也多,不过好像都在潜水  
www.cn-java.com -也很不错,文章很好,但是就是商业性浓了点。  
www.chinaitlab.com-非常有系统性,而且推出的java远程教育是中国最全面的scjp远程教育。 www.huihoo. ......

Java的单例模式例子

1. 先写一个Singleton的class
package stone;
public class Singleton {
    private static Singleton instance;
    private Singleton() {}
    public static Singleton getInstance(){
        if(instance==null)
  &n ......

Java的工厂模式例子

1. 简单工厂:
(1). 创建输出(Output)接口
package stone;
public interface Output {
    public int MAX_COUNT =10;               // 最多可打印多少条记录
    public void show();     ......

简易JAVA获取网页有效邮箱地址

//  简易JAVA获取网页有效邮箱地址 ---by 77
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class solo7 {
 public static void main(String args[]){
   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号