电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Java 2实用教程第4版_第7章_内部类与异常类

  • 资源ID:34146835       资源大小:367.50KB        全文页数:15页
  • 资源格式: PPT        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Java 2实用教程第4版_第7章_内部类与异常类

2018/2/21,第 1 页,注意:开始用功了!,2018/2/21,第 2 页,Java2实用教程(第4版) 第7章,配合例子源代码一起使用,Power point 制作:耿祥义 张跃平,内部类与异常类,2018/2/21,第 3 页,导读,主要内容内部类匿名类异常类断言,2018/2/21,第 4 页,§7.1 内部类,Java支持在一个类中声明另一个类,这样的类称作内部类,而包含内部类的类成为内部类的外嵌类。 某种类型的农场饲养了一种特殊种类的牛,但不希望其他农场饲养这种特殊种类的牛,那么这种类型的农场就可以将创建这种特殊种牛的类作为自己的内部类。 下面的例子1(Example7_1.java)中有一个RedCowForm(红牛农场)类,该类中有一个名字为RedCow(红牛)的内部类。程序运行效果如图7.1。,2018/2/21,第 5 页,§7.2 匿名类 §7.2.1 和子类有关的匿名类,Java允许我们直接使用一个类的子类的类体创建一个子类对象。 创建子类对象时,除了使用父类的构造方法外还有类体,此类体被认为是一个子类去掉类声明后的类体,称作匿名类。 假设Bank是类,那么下列代码就是用Bank的一个子类(匿名类)创建对象: new Bank () 匿名类的类体 ;,2018/2/21,第 6 页,例子2中(Example7_2.java)的ShowBoard类的showMess(OutputAlphabet show)方法的参数是OutputAlphabet类型的对象,用户在编写程序时,希望使用ShowBoard类的对象调用showMess(InputAlphabet show)输出英文字母表和希腊字母表,但系统没有提供输出希腊字母表的子类(只提供了输出英文字母表的子类OutputEnglish.java ),因此用户在主类的main方法中,向showMess方法的参数传递了一个匿名类的对象,该匿名类的对象对象负责输出希腊字母表。运行效果如图7.2。,2018/2/21,第 7 页,§7.2.2 和接口有关的匿名类,假设Computable是一个接口,那么,Java允许直接用接口名和一个类体创建一个匿名对象,此类体被认为是实现了Computable接口的类去掉类声明后的类体,称作匿名类。 下列代码就是用实现了Computable接口的类(匿名类)创建对象: new Computable() 实现接口的匿名类的类体 ; 例子3演示了和接口有关的匿名类的用法,运行效果如图7.3。,2018/2/21,第 8 页,§7.3 异常类,所谓异常就是程序运行时可能出现一些错误,比如试图打开一个根本不存在的文件等,异常处理将会改变程序的控制流程,让程序有机会对错误作出处理。 异常对象可以调用如下方法得到或输出有关异常的信息: public String getMessage(); public void printStackTrace(); public String toString();,2018/2/21,第 9 页,§7.3.1 trycatch语句,Java使用trycatch语句来处理异常,将可能出现的异常操作放在trycatch语句的try部分,将发生异常后的处理放在catch部分。 trycatch语句的格式如下: try 包含可能发生异常的语句 catch(ExceptionSubClass1 e) catch(ExceptionSubClass2 e) ,例子4给出了trycatch语句的用法,程序运行效果如图7.4,2018/2/21,第 10 页,§7.3.2 自定义异常类,我们也可以扩展Exception类定义自己的异常类,然后规定哪些方法产生这样的异常。一个方法在声明时可以使用throws关键字声明要产生的若干个异常,并在该方法的方法体中具体给出产生异常的操作,即用相应的异常类创建对象,并使用throw关键字抛出该异常对象,导致该方法结束执行。,2018/2/21,第 11 页,通常情况下,计算两个整数之和的方法不应当有任何异常放生,但是,对某些特殊应程序,可能不允许同号的整数做求和运算,比如当一个整数代表收入,一个整数代表支出时,这两个整数就不能是同号。,例子5(Example7_5.java)中,Bank类中有一个income(int in,int out)方法,对象调用该方法时,必须向参数in传递正整数、向参数out传递负数,并且int+out必须大于等于0,否则该方法就抛出异常(BankException.java )。因此,Bank类在声明income(int in,int out)方法时,使用throws关键字声明要产生的异常。程序运行效果如图7.5。,例子5(Example7_5.java),2018/2/21,第 12 页,§7.4 断言,断言语句用于调试代码阶段。在调试代码阶段让断言语句发挥作用,这样就可以发现一些致命的错误,当程序正式运行时就可以关闭断言语句,但仍把断言语句保留在源代码中,如果以后应用程又需要调试,可以重新启用断言语句。 使用关键字assert声明一条断言语句,断言语句有以下两种格式: assert booleanExpression; assert booleanExpression:messageException;,2018/2/21,第 13 页,例子6中,使用一个数组放着某学生5门课程的成绩,程序准备计算学生的成绩的总和。在调试程序时使用了断言语句,如果发现成绩有负数,程序立刻结束执行。程序调试开启断言语句运行效果如图7.6,关闭断言语句运行效果如图7.7。,2018/2/21,第 14 页,§7.5 应用举例,带finally子语句的trycatch语句,语法格式如下: try catch(ExceptionSubClass e) finally其执行机制是在执行trycatch语句后,执行finally子语句,也就是说,无论在try部分是否发生过异常,finally子语句都会被执行。,例子7(DangerException.java , CargoBoat.java , Example7_7.java )中模拟向货船上装载集装箱,如果货船超重,那么货船认为这是一个异常,将拒绝装载集装箱,但无论是否发生异常,货船都需要正点启航。运行效果如图7.8。,2018/2/21,第 15 页,

注意事项

本文(Java 2实用教程第4版_第7章_内部类与异常类)为本站会员(飞***)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.