zoukankan      html  css  js  c++  java
  • JAVA 基础之异常

      JAVA  异常

    1.异常的定义?

    阻止当前方法或作用域继续执行的问题。虽然java中有异常处理机制,但是要明确一点,决不应该用"正常"的态度来看待异常。绝对一点说异常就是某种意义上的错误,就是问题,它可能会导致程序失败。

    2.异常的分类?

    常见的异常一般都分为检查异常和非检查异常RuntimeExcepiton

    3.异常的捕捉?

    catch捕捉异常

    不能光捕捉

    catch(RuntimeException e)
    {
    */
    	//抓到异常,什么也不干
        /*
    	* 这样会使程序出现混乱状态,吃掉异常会出现严重的问题
    	*
    	*e.printStackTrace();
    	*程序的稳定性 正确的异常处理是程序稳定的关键
    	}
    //必须对异常进行合理的处理
    

      除了runtime以外的所有异常,都必须进行catch处理 或者抛出 ,抛出后由调用的地方再进行处理

    4.异常可以自己定义?

    异常可以自定义的,但是一般不这样使用,因为一般遇到问题都解决掉了很少有不能解决的问题需要抛出异常

    5.finally和final的区别

    finally是异常处理里都会进行的一环(除开出错 程序结束)

    final定义一个标记的变量并且不能赋值

    基本上来说final和finally不是一个东西

     案列

    package xyf;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    /*
     * 异常分为非检查异常
     * 除了runtimeexception
     * 都叫做检查异常
     * 
     * 
     * 
     */
    import java.lang.*;
    import java.sql.SQLException;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    public class yc
    {
    public static void main(String[] args) //throws ParseException//表示parse可能会抛出parseexception异常
    {
    	try
    	{
    		test();
    	if(true)
    	{
    		throw new IOException("aaa");
    		//throw new RuntimeException("aa");
    	}
    	if(true)
    	{
    		throw new SQLException("");
    		
    	}
    	
    	
    	}
    	/*catch(IOException ex)
    	{
    		System.out.println("文件没有找到");
    		
    	}*/
    	//如果不catch住那么必须在方法上声明抛出
    	
    	catch(ParseException ex)
    	{
    		System.out.println("解析日期出错");
    		
    	}
    	catch(IOException ex)
    	{
    		
    		System.out.println("文件没有找到");
    		
    	}
    	catch(SQLException ex)
    	{
    		
    		System.out.println("sql异常");
    		
    	}
    }
    static void test() throws ParseException,FileNotFoundException
    {
    	SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
    	Date date=sdf.parse("2008-08-08");
    	FileInputStream fis=new FileInputStream("w:\1.txt");
    
    }
    
    }
    

      

    异常的本意是好的,让我们试图修复程序,但是现实中我们修复的几率很小,我们很多时候就是用它来记录出错的信息。如果你厌倦了不停的处理异常,重新抛出异常对你来说可能是一个很好的解脱。原封不动的把这个异常抛给上一级,抛给调用这个方法的人,让他来费脑筋吧。这样看来,java异常(当然指的是受检异常)又给我们平添很多麻烦,尽管它的出发点是好的。

     

  • 相关阅读:
    Photoshop 基础三 制作简单按钮
    Photoshop 基础二 快捷键
    Photoshop 基础一 安装
    Winform 基础二 最小化 最大化 关闭 点击任务栏隐藏显示 点击鼠标左键移动窗体
    Winform 基础一 panel
    ASP 基础三 SQL指令
    回文&升降 数位dp
    双向链表()
    Two strings HDU
    Just do it HDU
  • 原文地址:https://www.cnblogs.com/a986771570/p/7109831.html
Copyright © 2011-2022 走看看