如何出现exception in thread main java.lang.exception?

在学习Java异常处理时如何使程序输出中出现    exception in thread main java.lang.exception:成绩输入异常

 

任务:接收给定的一行字符串(某学生各科成绩),当某科成绩大于 100 或者小于 0 时,抛出一个异常(Exception),提示“成绩录入异常”。最后统计该学生各科平均成绩。

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 间编写程序代码,接收给定的一行字符串(某学生各科成绩),当某科成绩大于 100 或者小于 0 时,抛出一个异常(Exception),提示“成绩录入异常”。最后统计该学生各科平均成绩。

 

测试说明

平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。

可在右侧 “测试结果”区查看具体的测试集详情。 示例: 输入:

 
  1. 88 88 91

输出:

 
  1. 该学生平均成绩为:89

输入:

  1. 103 78 90

输出:

Exception in thread "main" java.lang.Exception: 成绩录入异常

 

自己定义一个异常类,该异常继承Exception类

当成绩小于0或大于100时抛出一个异常,使用throws

import java.util.Scanner;

public class TestExcept {

	public static void main(String[] args) throws MyException {
		Scanner in = new Scanner(System.in);
		int score[] = new int[3];
		score[0] = in.nextInt();
		score[1] = in.nextInt();
		score[2] = in.nextInt();
		float sum = 0;
		for(int i = 0;i<score.length;i++) {
			if(score[i]<0 || score[i]>100) {
				throw new MyException("成绩录入异常");
			}else {
				sum += score[i];
			}
		}
		System.out.println("该学生平均成绩为:"+ sum/3);
	}
	
}
class MyException extends Exception{

	String message;
	public MyException() {
		
	}
	public MyException(String message) {
		super(message);
		this.message = message;
	}
	@Override
	public String getMessage() {
		return "Exception in thread \"main\" java.lang.Exception: " + message;
	}
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y