黑马程序员技术交流社区

标题: 常见异常整理 [打印本页]

作者: lilin661760    时间: 2015-10-7 22:54
标题: 常见异常整理
(一)Object类下的方法:
protected Object clone()                throws CloneNotSupportedException
        创建该对象的副本                        如果此对象的类不能实现接口 Cloneable,则会抛出 CloneNotSupportedException
protected void finalize()                 throws Throwable
          当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。子类重写 finalize 方法,以配置系统资源或执行其他清除。

(二)Array类
setInt
public static void setInt(Object array,                          int index,                          int i)                   throws IllegalArgumentException,                          ArrayIndexOutOfBoundsException
将指定数组对象中索引组件的值设置为指定的 int 值。
参数:
array - 数组
index - 数组内部的索引
i - 索引组件的新值
抛出:
NullPointerException - 如果指定对象参数为 null
IllegalArgumentException - 如果指定对象参数不是一个数组,或者无法通过一个恒等或基本扩展转换将指定值转换为基础数组的指定类型
ArrayIndexOutOfBoundsException - 如果指定的 index 参数为负,或者它大于等于指定数组的长度

SimpleDateFormat类
SimpleDateFormat
public SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。注:此构造方法可能不支持所有语言环境。要覆盖所有语言环境,请使用 DateFormat 类中的工厂方法。
参数:
pattern - 描述日期和时间格式的模式
抛出:
NullPointerException - 如果给定的模式为 null
IllegalArgumentException - 如果给定的模式无效

String 类
Matches 方法
public boolean matches(String regex)
告知此字符串是否匹配给定的正则表达式。
调用此方法的 str.matches(regex) 形式与以下表达式产生的结果完全相同:
Pattern.matches(regex, str)
参数:
regex - 用来匹配此字符串的正则表达式
返回:
当且仅当此字符串匹配给定的正则表达式时,返回 true
抛出:
PatternSyntaxException - 如果正则表达式的语法无效

Collection 类
retainAll
boolean retainAll(Collection<?> c)
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。换句话说,移除此 collection 中未包含在指定 collection 中的所有元素。
参数:
c - 包含保留在此 collection 中的元素的 collection
返回:
如果此 collection 由于调用而发生更改,则返回 true
抛出:
UnsupportedOperationException - 如果此 collection 不支持 retainAll 操作
ClassCastException - 如果此 collection 中一个或多个元素的类型与指定 collection 不兼容(可选)
NullPointerException - 如果此 collection 包含一个或多个 null 元素,并且指定的 collection 不允许 null 元素(可选),或者指定的 collection 为 null


List 接口
此类的 iterator 和 listIterator 方法返回的迭代器是快速失败的:在创建迭代器之后,除非通过迭代器自身的 remove 或 add 方法从结构上对列表进行修改,否则在任何时间以任何方式对列表进行修改,迭代器都会抛出 ConcurrentModificationException(并发修改异常)。因此,面对并发的修改,迭代器很快就会完全失败,而不是冒着在将来某个不确定时间发生任意不确定行为的风险。

/*
* 异常:程序在运行过程中发生由于硬件设备问题、软件设计错误等导致的程序异常事件。
*
* JVM默认处理方式:
*                 将类名   描述信息   追踪的位置  打印到控制台
*                 并终止程序
*
* 今天重点:
*                 程序员的两种异常处理方式
*/
/*
* 异常捕获并处理
*
* 格式一:
*                 try{        需要检测的代码;        }catch(异常类  变量){        异常处理代码;        }
*
        格式二://先执行try 之后执行 finally 最后执行catch
       
                try{        需要检测的代码;        }catch(异常类  变量){        异常处理代码;        }finally{        必须被执行代码;        }
        格式三:        //使用此格式,不执行catch ,扔抛出异常
                try{        需要检测的代码;        }finally{        必须被执行代码;                }

* 捕获方式处理多异常
*                 分别捕获分别处理,一个try对应所有catch
*                 注意:大的异常不能在前边捕获     如果明确异常是什么异常(具体的子异常),直接catch 具体的子异常
*                
* 异常的方法:
*                 public void printStackTrace()  将错误及追踪信息输出  即 使用错误流打印所有异常相关信息
*
*                 类名  +  异常描述   +  追踪信息
*
*                 getClass  getMessage()
*
*                 public String getMessage()  返回此 throwable 的详细消息字符串。
*/
/*
* 声明抛出异常
*
* throws:用于声明函数抛出异常。用于函数声明。(在类名位置)
*
* 当有一个方法使用throws声明抛出异常后,如果产生了这个异常,则该方法不再处理,抛给调用该方法的方法去处理
*/
/*
* throw:用于抛出异常对象。(在方法中位置) 用于函数内容。   即:异常类创建异常对象,自己给自己制造麻烦
*
* 异常处理注意事项
*
* 子类重写方法抛出的异常,必须小于等于父类被重写方法抛出的异常
*
*/
作者: 郭金晶    时间: 2015-10-8 22:14
赞一个
作者: 校长    时间: 2015-10-9 10:51
为辛勤付出的黑马人赞一个!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2