Java 异常、包装类及字符串
异常
在程序运行过程中,意外发生的情况,背离我们程序本身的意图的表现,都可以理解为异常。
异常分类
Error(错误)
Exception(异常)

注意:
- 对于可查异常必须捕获或者声明抛出。
- 允许忽略不可查的RuntimeException(含子类)和Error(含子类)。
异常处理
五个关键字:try、catch、finally、throw、throws
- 捕获异常:try、catch、finally
- 声明异常:throws
- 抛出异常:throw
try-catch-finally
try块后可接零个或多个catch块,如果没有catch块,则必须跟一个finally块。
1
2
3
4
5
6
7try{
// 捕获异常
}catch(){
// 处理异常
}finally{
// 最后必执行这里的代码
}System.exit(1):终止当前程序。
throw和throws
throws:在方法定义时声明该方法要抛出的异常类型
1
2
3public void method() throws Exception1,Exception2,...{
//可能产生异常的代码
}throw用来抛出一个异常
如:throw new IOException();
throw抛出的只能够抛出类Throwable或者其子类的实例对象。
如:throw new String(“ss”);是错误的。
throw抛出异常对象的处理方案:
- 通过try…catch包含throw语句–自己抛自己处理
- 通过throws在方法声明时抛出异常类型–谁调用谁处理,调用者可以自己处理也可以继续向上抛出。
1
2
3
4
5
6
7
8
9
10
11
12
13public void method(){
try{
//代码段1
throw new 异常类型();
}catch(异常类型 ex){
//对异常进行处理的代码段2
}
}
public void method() throws 异常类型{
//代码段1
throw new 异常类型();
}
自定义异常
所谓自定义异常,就是定义一个类,去继承Throwable类或者它的子类。
1
2
3
4
5public class TestException extends Exception{
public TestException(){
super("XXX");
}
}
包装类
使数据类型获得属性、方法,对象化交互。
拆箱:包装类->基本数据类型
装箱:基本数据类型->包装类
基本数据类型转换为字符串:包装类中的toString方法实现。
字符串转换为基本数据类型:包装类中的parseInt、valueOf等方法实现。
注意
- “==”只能比较两个对象地址是否相同。
- “equals”比较两个对象的值是否相同。
- 自动装箱时,整型数据位于-128到127之间,则会九年如缓存区(对象池),下一次装箱时如果缓存区中有该对象则直接引用。如果没有则实例化对象。(double和float不具有缓存区)。
字符串
网络中传输都是二进制数据。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 CodeWhale-Blog!
评论






