事件处理程序

时间:2022-12-19 23:14:53

java异常处理

 

1. 编写一个类ExceptionTest,在main方法中使用try-catch-finally语句结构实现:

²  在try语句块中,编写两个数相除操作,相除的两个操作数要求程序运行时用户输入;

²  在catch语句块中,捕获被0除所产生的异常,并输出异常信息;

²  在finally语句块中,输出一条语句。

 

 package aaa;
 2 import java.rmi.MarshalException;
 3 import java.util.*;
 4 
 5 public class ExceptionTest {
 6     static int avg(int a,int b) throws MarshalException{
 7         if (b==0){
 8             throw new MarshalException("除数不能为0");
 9         }
10         return a/b;
11         
12     }
13 
14     public static void main(String[] args) {
15 
16         
17         try{
18             Scanner sc = new Scanner (System.in);
19             int a,b,c;
20             System.out.println("请输入除数与被除数:");
21             a = sc.nextInt();
22             b = sc.nextInt();
23             int result = avg (a,b);
24             c = a/b;
25             System.out.println("计算结果为:"+c);
26             
27         }
28         catch(MarshalException e){
29             System.out.println(e.getMessage());
30         }
31         finally{
32             System.out.println("运行结束。");
33         }
34 
35     }
36 
37 }
1. 编写一个应用程序,要求从键盘输入一个double型的圆的半径,计算并输出其面积。测试当输入的数据不是double型数据(如字符串“abc”)会产生什么结果,怎样处理。


 package bbb;
2 import java.rmi.MarshalException;
3 import java.util.*;
4 public class Area {
5     public static void main(String[] args) {
6         final double PI=3.14159;
7        
8         try{
9             Scanner sc = new Scanner (System.in);
10             double r,s;
11             System.out.println("请输入园的半径");
12             r = sc.nextInt();
13             s = PI*r*r;
14             System.out.println("计算结果为:"+s);
15            
16         }
17         catch(Exception e){
18             System.out.println("输入数据格式不正确");
19         }
20         finally{
21             System.out.println("运行结束。");
22         }
23        
24        
25
26
27     }
28
29 }

复制代码