一、题目:
二、代码:
1、Test.java
1 /** 2 * 主类,包含一个计算平均成绩的类方法,一个主方法; 3 */ 4 package cn.edu.ccut.object1; 5 import java.util.*; 6 7 public class Test { 8 9 /** 10 * @param args 11 */ 12 public static double getaverage() throws MyException{ 13 int score; 14 int sum = 0; 15 Scanner reder = new Scanner(System.in); 16 System.out.println("请输入5个成绩:"); 17 for(int i = 0 ; i < 5 ; i++){ 18 score = reder.nextInt(); 19 if(score < 0 || score > 100){ 20 throw new MyException(score); //抛出自定义异常; 21 } 22 sum += score; 23 } 24 return (double)(sum / 5); 25 } 26 public static void main(String[] args) { 27 // TODO Auto-generated method stub 28 try{ 29 System.out.println("平均成绩是"+getaverage()); 30 } 31 catch(MyException a){ //捕获自定义异常; 32 System.out.print("程序异常,"+a); 33 } 34 } 35 }
2、MyException.java
1 /** 2 * 自定义异常 3 */ 4 package cn.edu.ccut.object1; 5 6 public class MyException extends Exception{ 7 int sc; 8 MyException(int a){ 9 sc = a; 10 } 11 public String toString(){ 12 return "输入的成绩"+sc+"超范围"; //自定义异常描述信息; 13 } 14 }
三、运行结果:
原文:https://www.cnblogs.com/chris-wang/p/11847675.html