- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
集合和异常处理 集合 集合接口(Conllection接口) 集合接口(Map接口) 集合框架 集合有三种类型 List:事物列表 Set: 唯一的事物列表 Map 具有唯一ID的事物 List接口下的几个实现类 ArrayList:一个可增长的数组,提供快速遍历和快速随机访问,当需要快速遍历时而不是做大量删除和插入时,用ArrayList Vector(Hashtable)为了线程安全,Vector方法被同步,通常使用ArrayList 而不用Vector。 ArrayList和Vector是唯一的两个设计了RadomAccess方法类 Set接口下的几个实现类 Set接口:重在数据的唯一性,不允许重复,set接口通过equals()方法确定两个对象是否相等,重复时只能有一个放在set中。 Set的三种实现类 HashSet:未排序、未分类的集合,不能重复插入值,不关心数据顺序时使用 LinkedHashSet:一个排序,但未分类的集合,在元素之间使用一个双向链表来连接,当关心遍历顺序时使用LinkedHashSet,它将按插入的顺序进行遍历,当使用HashSet时遍历的顺序是不可预知的。 TreeSet:按照一种二叉树的结构进行存储,并可以保证遍历时,会按照元素的自然顺序进行排序。 也可以自己构造一个TreeSet,让其按照自己的想法进行排序 Map接口下的实现类 Map接口: 按 “键-值”对进行插入,(键、值都是对象)可以按照键来搜索值对象 可以查找值的集合,也可以查找键的集合 HashMap:一种未分类,未排序的映射类,不需要顺序时HashMap是一种最好的选择,因为其效率较高,HashMap允许集合中有一个null键和多个null值。 Hashtable:Hashtable 是HashMap的同步版本,但Hashtable不允许有任何的null存在。 LinkedHashMap:和linkedHashSet一样,LinkedHashMap维护插入和访问的顺序,添加和删除比HashMap慢,但遍历的速度要更快。 TreeMap:一个顺序的Map集合。 什么是异常? 异常类通常用来定义程序所遇到的轻微异外。可以写代码来处理异常并继续程序执行,而不是让程序中断。 例如:发生下列情况时,会出现异常: 想打开的文件不存在 网络连接中断 受控操作数超出预定范围 非常感兴趣地正在装载的类文件丢失 7.4 异常关系图 异常机制有什么作用? 在程序中发生错误时,发现错误的方法能抛出一个异常到其调用程序。然后,调用方法捕获该异常,以一定的方法处理异常并继续程序执行。 这个方案给程序员一个写处理程序的选择,来处理异常。 它为系统和用户之间提供了一种友好的交互方式。 异常分类 实例 //HelloWorld 程序版本的简单扩展 public class HelloWorld { ??? public static void main (String args[]) { ?????? int i = 0; ?????? ? ???? String greetings [] = {Hello world!, ???? No, I mean it!,HELLO WORLD!!};??? ? ??? while (i 4) { ??? System.out.println (greetings[i]); ??? i++; ??? } ?? } } 分类说明 Error表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。 RuntimeException表示一种设计或实现问题,即如果程序运行正常,从不会发生的情况(比如刚才的数组越界)。 IOException表示输入输出过程中出现的异常 运行结果 编译执行,输出结果如下: ????? Hello world! ????? No, I mean it! ??????HELLO WORLD!! ????? java.lang.ArrayIndexOutOfBoundsException: ? at HelloWorld.main(HelloWorld.java:12) 原因: 当i = 3是,按照循环中的规定,要输出的greetings[3]不存在,超出了数组的边界,因而产生异常。 异常处理 Java编程语言提供了一个来考虑哪个异常被抛出以及如何来恢复它的机制。 try和catch语句 调用栈机制 finally语句 重访前例 try和catch语句 try { // 可能抛出异常的代码段; } catch
文档评论(0)