关注
异常类: /**
*
*/
package com.finersoft.nowcoder05;
/**
* 名称:播放异常类<br/>
* 说明:<br/>
* 作者:筱茜 链接:https://www.nowcoder.com/discuss/70619 来源:牛客网
*
* 需求描述:
*
* 自定义一个异常类NoThisSoundException和Player类,在Player类的play()方法中使用自定义异常,要求如下:
*
* NoThisSoundException继承自Exception类,类中有一个无参和一个接收一个string类型参数的构造方法,构造方法中都是用super关键字调用父类的构造方法。
* Player类中定义一个play(int
* index)方法,方法接收一个int类型的参数,表示播放歌曲的索引,当index>10时,play()方法用throw关键字抛出NoThisSoundException异常,创建一场对象时,调用的有参构造方法,传入“您播放的歌曲不存在”。
* 在测试类中创建Player对象,并调用play()方法测试自定义的NoThisSoundException异常,使用try...catch语句捕获异常,调用NoThisSoundException的getMessage()方法打印异常提示信息。
*
* 考查知识点:
*
* 面向对象的继承特性 自定义异常类的实现 异常处理的相关知识点
*
* 参考知识点:《java基础入门》第4章<br/>
*
* @author Finersoft
* @date 2018年3月27日
*/
public class NoThisSoundException extends Exception {
/**
*
*/
private static final long serialVersionUID = 5303011482203106325L;
/**
* 无参构造方法,懒人用
*/
public NoThisSoundException() {
super("没有一首歌能表达我忧郁的心情");
}
/**
* 带参构造方法
* @param msg
*/
public NoThisSoundException(String msg) {
super( msg);
}
}
播放器类和测试方法: /**
*
*/
package com.finersoft.nowcoder05;
/**
* 名称:播放器类<br/>
* 说明:<br/>
* 作者:筱茜 链接:https://www.nowcoder.com/discuss/70619 来源:牛客网
*
* 需求描述:
*
* 自定义一个异常类NoThisSoundException和Player类,在Player类的play()方法中使用自定义异常,要求如下:
*
* NoThisSoundException继承自Exception类,类中有一个无参和一个接收一个string类型参数的构造方法,构造方法中都是用super关键字调用父类的构造方法。
* Player类中定义一个play(int
* index)方法,方法接收一个int类型的参数,表示播放歌曲的索引,当index>10时,play()方法用throw关键字抛出NoThisSoundException异常,创建一场对象时,调用的有参构造方法,传入“您播放的歌曲不存在”。
* 在测试类中创建Player对象,并调用play()方法测试自定义的NoThisSoundException异常,使用try...catch语句捕获异常,调用NoThisSoundException的getMessage()方法打印异常提示信息。
*
* 考查知识点:
*
* 面向对象的继承特性 自定义异常类的实现 异常处理的相关知识点
*
* 参考知识点:《java基础入门》第4章<br/>
*
* @author Finersoft
* @date 2018年3月27日
*/
public class Player {
/**
* 歌曲索引开始
*/
static int startIndex = 0 ;
/**
* 歌曲索引结束
*/
static int endIndex = 10 ;
/**
* 播放音乐
* @param index
* @throws NoThisSoundException
*/
public static void play(int index) throws NoThisSoundException {
if (index > startIndex && index <= endIndex) {
System.out.println("我在唱一首歌,一首简单的歌");
} else {
throw new NoThisSoundException("您播放的歌曲不存在");
}
}
/**
* 测试方法
* @param args
*/
public static void main(String[] args) {
try {
play(10);
play(11);
} catch (NoThisSoundException e1) {
System.out.println(e1.getMessage());
} catch (Exception e) {
//好的异常习惯是最后要加一个上面异常处理不了时怎么处理的操作
System.out.println("其他异常" + e.getMessage());
}
finally {
//System.out.println("扫尾操作");
}
System.out.println("播放完毕");
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
查看6道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我是面试官,请用一句话让我破防 #
15528次浏览 100人参与
# 美团开奖 #
182259次浏览 967人参与
# 快手技术岗信息交流阵地 #
15499次浏览 82人参与
# 校招生月薪1W算什么水平 #
14489次浏览 110人参与
# 中美关税战对我们有哪些影响 #
37380次浏览 304人参与
# i人适合做什么工作 #
7504次浏览 81人参与
# “vivo”个offer #
32662次浏览 246人参与
# 读研or工作,哪个性价比更高? #
74935次浏览 762人参与
# 华为保温 #
102035次浏览 381人参与
# 哪些瞬间让你真切感受到了工作的乐趣 #
16954次浏览 79人参与
# 小厂实习有必要去吗 #
69664次浏览 344人参与
# 哪些行业值得去? #
2610次浏览 40人参与
# 秋招什么时候开投比较合适? #
109581次浏览 807人参与
# 如果秋招能重来,我会____ #
29133次浏览 255人参与
# 华为池子有多大 #
107146次浏览 746人参与
# 美团求职进展汇总 #
2805244次浏览 23834人参与
# 上班后和你想的一样吗? #
87218次浏览 666人参与
# 苦尽甘来时,再讲来时路 #
25911次浏览 359人参与
# 为了实习逃课值吗? #
22743次浏览 213人参与
# 大家实习每天都在干啥 #
96855次浏览 536人参与
# 工作压力大怎么缓解 #
119426次浏览 1112人参与
# 如果上班像打游戏,你最想解锁什么技能 #
5321次浏览 55人参与

