Eclipse与异常处理

快捷键:Ctrl+d删除光标所在的这一行

    Alt+/ 智能提示

异常处理

  异常是阻止当前方法或作用域继续执行的问题,在程序中导致程序中断运行的一些指令。

try与catch关键字

    try{

      //有可能发生异常的代码段

    }catch(异常类型 对象){

          //异常的处理操作

    }...

    finally{

      //异常的统一出口

    }

例:

 1 public class Practice14 {
 2     
 3     public static void main(String[] args) {
 4         // TODO Auto-generated method stub
 5         try{
 6         int num1=10;
 7         int num2=0;
 8         System.out.println(num1/num2);
 9         }catch(ArithmeticException e){
10             System.out.println("算术运算异常");
11         }
12         finally{
13             //最终:可以在这里做一些回收清理工作
14             System.out.println("finally语句不管会不会出现异常都会执行");
15         }
16     }
17     
18 }

throw与throws关键字:

    throws关键字主要在方法的声明上使用,表示方法中不处理异常,而交给调用处处理。

    throw关键字表示程序中手动抛出一个异常,因为异常从处理机制来看,所有的异常一旦产生之后,实际上抛出的就是一个异常类的实例化对象,那么此对象也可以由throw直接抛出。

 1 public class Practice14 {
 2     
 3     public static void main(String[] args) {
 4         // TODO Auto-generated method stub
 5         //exTest();
 6         try {
 7             int result=exTest2(10,2);
 8             System.out.println(result);
 9         } catch (Exception e) {
10             // TODO Auto-generated catch block
11             e.printStackTrace();
12         }
13     }
14     private static int exTest2(int num1,int num2)throws Exception{
15         if(num2==0)throw new ArithmeticException("除数不能为0");
16         return num1/num2;
17     }
18     private static void exTest() {
19         try{
20         int num1=10;
21         int num2=0;
22         System.out.println(num1/num2);
23         }catch(ArithmeticException e){
24             System.out.println("算术运算异常");
25         }
26         finally{
27             //最终:可以在这里做一些回收清理工作
28             System.out.println("finally语句不管会不会出现异常都会执行");
29         }
30     }
31     
32 }

 自定义异常:可以通过继承Exception类或已有的异常类的方式完成一个自定义异常类的操作。

例:

 1 package com.vince;
 2 /**
 3  * 
 4  * @author Administrator
 5  *
 6  */
 7 public class MyException extends Exception{
 8     private String message;
 9     public MyException(String message){
10         super(message);
11         this.message =message;
12     }
13     @Override
14     public String toString() {
15         // TODO Auto-generated method stub
16         return message;
17     }
18 }

Eclipse之debug技术

debug:调试是程序员编码过程中找逻辑错误的一个很重要的手段

断点:遇到断点,暂挂,等候命令

debug as->Java Application

快捷键:F5:单步跳入。进入本行代码中执行

    F6:单步跳过。执行本行代码,跳到下一行

    F7:单步返回。跳出方法

    F8:继续。执行到下一个断点,如果没有断点了,就执行到结束

    Ctrl+R:执行光标所在的这一行

原文地址:https://www.cnblogs.com/shenhainixin/p/5083207.html