Java面向对象-异常处理机制
2018-03-20 09:53
176 查看
1,异常处理:程序执行到异常的地方就终止,不会继续执行之后的代码
eclipse会打印异常的情况
2,所有的异常都是throwable的子类
3,异常处理的2种办法
1) try {可能出现异常的语句} catch (异常的类[可以是Exception或其子类] 变量名) finally {必须执行的语句}
如果try catch有多个catch,则只能执行一个分支
空指针异常:引用了未实例化的对象
2)throw throws:抛出异常,让执行该方法的类去捕捉异常
3,捕获键盘输入的异常
eclipse会打印异常的情况
2,所有的异常都是throwable的子类
throwable有2个分支 1)Error:系统性问题,例如堆栈溢出,只能通过修改代码解决,系统无法自动处理 2)Exception:可以处理 Exception有2种情况 a,编译期异常:必须处理,否则无法运行 b,运行期异常:系统自行处理。包含(数组越界异常,空指针异常,算术异常等)
3,异常处理的2种办法
1) try {可能出现异常的语句} catch (异常的类[可以是Exception或其子类] 变量名) finally {必须执行的语句}
如果try catch有多个catch,则只能执行一个分支
public class Demo1 { public static void main(String[] args) { int a = 10; int b = 0; int[] c = new int[3]; User[] user = new User[3]; try { // System.out.println(a/b); // System.out.println(c[3]); System.out.println(user[1].name); } catch (ArithmeticException e) { System.out.println("算术异常"); } catch (NullPointerException e) { System.out.println("空指针异常"); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("数组越界异常"); } System.out.println("Over"); } } class User { String name = "张三"; }
空指针异常:引用了未实例化的对象
2)throw throws:抛出异常,让执行该方法的类去捕捉异常
pulic static void method throws Exception{ throw new Exception("数组越界异常"); }
3,捕获键盘输入的异常
try { // 捕获按键非法输入 key = sc.nextInt(); } catch (Exception e) { System.out.println("非法输入!"); sc = new Scanner(System.in); //系统bug,需要加上这句代码 //递归调用该方法; return; }
相关文章推荐
- Java面向对象--内存分析,异常处理机制
- Java面向对象概述
- java面向对象
- java学习面向对象之异常之一
- java面向对象问题小记
- java门禁系统面向对象程序设计
- Java面向对象要点
- (5)Java面向对象之初步了解
- [Java实现]通过一个Java小程序(吃苹果)深入理解面向对象思想
- Java面向对象总结(一)
- 【转载】J2SE知识点归纳笔记(三)---Java面向对象 part 1
- Java第二课 Java面向对象编程,面向对象编程和面向过程编程的区别,我们如何才能掌握面向对象的编程,类和对象的关系;讲解了Java中的构造、重载、this和super变量、静态变量、Java中的常
- Java面向对象之封装
- java面向对象之继承
- 黑马程序员 java 基础 毕向东 面向对象 多态
- 61条Java面向对象设计的经验原则
- 学习笔记6—Java基础4_面向对象下b
- java面向对象--06
- java面向对象之抽象, 接口
- Java面向对象之封装、继承、多态