黑马程序员 Java基础 --->异常处理与包
2013-04-11 13:58
501 查看
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
异常处理机制
异常的体系:. Throwable
. Error
. 通常出现重大问题如:运行的类不存在或者内存溢出等。
. 不编写针对代码对其处理
. Exception
. 在运行时运行出现的一起情况,可以通过try catch finally
Exception和Error的子类名都是以父类名作为后.
Throwable中的方法
. getMessage() //获取异常信息,返回字符串。
. toString() // 获取异常类名和异常信息,返回字符串。
. printStackTrace() //获取异常类名和异常信息,以及异常出现在程序中的位置。返回值void。
. printStackTrace(PrintStream s) //通常用该方法将异常内容保存在日志文件中,以便查阅。
对多异常处理:
1. 声明异常时,建议声明更为具体的异常。这样的处理可以更具体。
2. 对方声明几个异常,就对应有几个catch块。如果多个catch块中的异常出现继承关系,父类异常catch块放在最下面。(建立在进行catch处理时,catch中一定要定义具体处理方式。不要简单的就书写一条输出语句。)
自定义异常:
1.必须是自定义类和继承Exception。
2.继承Exception的原因:
异常体系有一个特点,因为异常类和异常对象都被抛出。他们都具备可抛性。这个可抛性是Throwable这个体系中的独有的特点。只有这个体系中的类和对 象才可以被throgws和throw操作。
throws和throw的区别:
throws使用在函数上。
throw使用在函数内。
throw后面跟的异常类。可以跟多个。用都好隔开。
Throw后跟的是异常对象。
异常处理例:
try
{
需要被检测的代码
}
catch(异常类变量)
{
处理异常的代码;
}
finally
{
一定会执行的语句;
}
抛出异常例:throws Exception
public static void func()throws Exception //在函数上抛出
{
try
{
throw new Exception(); //在函数内抛出
}
finally
{
System.out.println("异常已经抛出");
}
}
多异常处理:
例: try
{
需要被检测的代码
}
catch(异常1 e)
{
处理异常的代码;
}
catch(异常2 e)
{
处理异常的代码;
}
自定义异常类例:
class MyException
extends Exception //继承异常类
{
描述自定义的异常的内容;
}
异常在子父类覆盖中的体现:
1. 子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或者该异常的子类。
2. 如果父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集。
3. 如果父类或者接口的方法中没有异常抛出,那么子类在覆盖方法时,也不可以抛出异常。
4. 如果子类方法发生了异常。就必须要进行try处理。绝对不能抛。
包:
package关键字用来声明该类存放在哪个包。
编译存放路径:javac –d路径编译文件 (例:javac
–d c:\myclass PackageDemo.java)
设置classpath路径:set classpath =路径(例:set classpath
=c:myclass)
建立对象时,存放在包的类前面要加上包名:包名.类名(例:包名.类名对象名
= new 包名.类名())
如果从一个包访问另一个包的类,被访问的类要被public修饰。类公有后,被其他包访问的成员也要 public才可以访问。
import关键字是用来导入包中的类的。A类如果导入B类所在的包,要访问B类是就可以省略前面的类名。
当导入不同的包出现重名的类是必须加包名。
jar包:
创建当前路径的jar包:jar –执行命令
jar包名.jar包1包2
例:jar –cf haha.jar pack pack2
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
相关文章推荐
- 黑马程序员 Java基础<四>---> 异常
- 黑马程序员——java基础知识篇——>异常总结
- 黑马程序员 Java基础<三>---> 抽象类、与接口
- java异常处理<3>__笔记(19)
- 黑马程序员:Java基础总结----子接口 set<E>及其实现类
- 黑马程序员 Java基础<一> 数组及排序
- 黑马程序员 java基础<一>--其它对象System、Runtime(1)
- 黑马程序员——java基础知识篇——>标识符、关键字、常量、进制表示、数据类型、运算符等
- 黑马程序员——java基础知识篇——>循环语句
- Java基础<六>_异常、包
- 黑马程序员 java基础<八>--网络编程(2)
- 黑马程序员——java基础知识篇——>String类
- java异常处理<1>__笔记(17)
- 黑马程序员 Java基础 --->7K面试题之交通灯管理系统
- 黑马程序员 Java基础<五>---> 多线程
- 黑马程序员 Java基础 --->多线程
- 黑马程序员 Java基础_5 Java异常处理
- 黑马程序员——java基础知识篇——>if语句、switch语句
- 黑马程序员 Java基础知识总结-异常处理
- 黑马程序员 JAVA基础<二> 面向对象之封装 继承 多态