由于 字符串 24LL 不属于数值类型的字符串 ,转换为 int 型时 发生了NumberFormatException异常 使用 异常处理try-catch语句可以使程序继续执行
/*当然 完整的异常处理语句 包含了finally 语句
不管前面try -catch 语句是否能顺利执行完毕,都会执行 finally 语句块
有 3个 个 特殊情况 不会执行
finall 语句中发生了异常
前面的代码使用了 System.exit() 退出
程序的线程死亡
*/
import java.io.FileNotFoundException;
import java.io.PrintStream;
public class Test {
/**
* @param args
* @throws FileNotFoundException
*
*/
public static void main(String[] args) throws FileNotFoundException {
// TODO Auto-generated method stub
try{
System.out.println("我的年龄是");//输出提示信息
int age = Integer.parseInt("24LL"); //数据类型的转换 字符串转换成整型。
System.out.println(age); //输出信息
}catch (Exception e) //catch语句用来捕获异常信息
{
//e.getMessage() ;// 1 getMessage()函数 输出错误的性质
// e.toString(); // 2 e.toString()给出异常的类型和性质
//e.printStackTrace() ; // 3 e.printStackTrace() 指出异常的类型,性质,栈层次以及出现在程序中的位置
/*输出的结果 当try 代码块中的语句发生了异常,程序就会跳到catch 代码块 执行 ,执行完catch中的程序代码块,继续执行catch 代码块后的代码,
*不会 执行try中发生异常的语句的代码 可以看出java 的异常处理是结构化的 ,不会因为一个异常而影响整个程序的执行。
*
*/
//PrintStream s = new PrintStream(" ") ;
// 输出流使用
/* 抛出结果找不到指定的路径*/
PrintStream s = new PrintStream("f://wuzhiqiang.txt ") ; //把抛出的异常信息输入到指定的文件中
e.printStackTrace(s);
}
System.out.println(" 程序 OVer ");
}
}