一、Eclipse开发环境的使用
1、Eclipse是一个强大的集成开发环境(90%的java开发者都在使用)
二、异常处理
1、异常的但一个:在程序运行过程中,由于语法或者逻辑错误,导致程序中断,无法继续运行,称为程序异常。
在程序出现异常时,我们应该在预先考虑如何处理。
Java中异常分类:Throwable
Throwable分为:Error和Exception,Error表示错误,是JVM内部发生的异常,程序无法控制,一般程序员不用关心,Exception表示程序异常,这个我们要关注的问题。
Eception分为:
(1)受检异常,又称编译时异常,必须使用try语句处理,或抛出
(2)非受检异常,又称为运行时异常,从代码上区别,继承RuntimeException或其子类的异常,称为运行时异常。运行时异常可以不用处理。
在Java中,为我们提供了以下关键字来处理异常:
try;尝试把有可能出现异常情况的代码段,使用try语句包裹起来,当这个代码段出现异常后,系统将会自动生成一个对应的异常对象,然后把该对象传递给catch语句块。
catch:捕获。与try语句一起使用,当try代码段有异常出现,会把异常对象传入到catch语句块中,由程序进行处理。Catch语句块可以有一个或多个,不能单独使用。
finally:最终的。与try语句块一起使用,无论try语句是否出现异常,最终都会执行finally块中的代码。
throw:抛出。程序可以把一个异常对象抛出,由调用该代码的地方处理
throws:抛出。在方法中声明中使用,与throw一起配合使用。
异常类:其实就是一种标记,起到一种语意的作用。
常用的异常类:
异常的产生过程:
当被某句代码出现异常(在编译期或运行期),系统会产生该异常对应的异常类对象,如果此时该代码在try语句块中,那么会从catch代码块匹配相应的异常类型,如果匹配成功会把该异常对象传给catch中声明的异常变量,然后执行catch语句块中的代码。其他catch将不会执行;如果没有匹配成功的catch,那么会把该异常实例抛给JVM,结束,如果出现异常的代码没有使用try语句,那么产生的异常实例将直接抛给JVM,JVM的处理方式是,中断程序的运行。
自定义异常:
在实际开发中,我们把业务逻辑性的错误定义为异常,这样的好处是,我们可以利用异常的机制来处理程序,在多层调用时,可以很方便的处理问题。
例如:
(1)登录验证异常
(2)权限控制异常
(3)其他业务逻辑异常
assert:断言
断定某一个方法的逻辑处理后的结果。
让assert起作用,需要在运行程序是添加一个VM参数:-ea
Java-ea Test
debug技术: 调试
Eclipse调试功能:
F5: 进入方法内部
F6:下一步
F7:跳出方法
F8:调到下一个断点
补充面试题:
1、Final, finally,finalize 三者的区别:
Final:修饰属性,就是常量,修饰方法,方法不能被重写,修饰类,类不能被继承。
Finally:是异常处理时与try语句配合使用,无论try语句代码是否出现异常,都会执行finally语句块的代码
Finalize:当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。
2、观察以下代码,当a为10,b为2时,finally语句是否会执行?