java013

1,异常

  1. 1程序出现了问题

    程序一旦遇到异常,后面代码无法正常执行,并且同时控制台中展示异常的详细信息|细节问题,便于程序猿的调试

异常体系:

Throwable ->Error|Exception

Error: 一般指由虚拟机生成并脱出的,无需程序猿解决处理

Exception:异常 异常如果不处理,程序无法正常执行,需要程序猿在代码层面上处理异常

RuntimeException :运行时异常 : 运行期间才会发生的异常

CheckedExcetion编译时异常|检查时异常 : 编译期间发生的异常,不处理程序无法运行

 

重点学习关注异常处理方案: 所有的异常都可以通过标准异常处理方案来处理 运行时异常一般通过增强程序健壮性的代码就可以解决 -> if判断 编译时异常只能通过异常处理方案来处理

几种常见的运行异常:

NullPointerException 空指针异常 ArithmeticException 数学异常 ArrayIndexOutOfBoundsException 数组索引越界异常 NegativeArraySizeException 数组长度负数异常 ClassCastException 类型转换异常 NumberFormatException 转换格式异常

 

1.2:异常处理方案

1.异常抛出 throws

把异常抛出到上一层,谁调用谁处理

2.异常捕获

异常对象当前抓住捕获,直接处理

例如:

try {
            可能会出现异常的代码;
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (NullPointerException e) {
            e.printStackTrace();
        } catch (Exception e) {  --> 接盘侠
            System.out.println("出现了文件未找到异常, 捕获异常...");
            e.printStackTrace();
        }
​

 

 注意:
        1.异常一旦处理,不影响程序的继续执行
        2.try中代码可能出现异常,可能不会出现异常,
            如果没有出现异常,try{}中的代码执行完毕,try...catch结束
            try中代码一旦异常,try后面的代码不会执行,直接执行catch的判断
                从上到下一次判断,判断当前的catch是否能够捕获出现的异常对象,如果能,执行后面的{}中的代码,
                如果不能匹配,继续向下判断,如果所有的都不鞥匹配,当前的异常对象没有处理,中止程序的执行
        3.一个try后面可以跟1~n个catch
        4.如果一个异常已经通过catch处理不影响后面代码的执行
        5.接收范围较大的异常的catch,需要定义在后面
        6.finally 最终的
                无论try中是否会出现异常,finally中的代码肯定最后会执行
                一般会定义一些资源的关闭等代码

 

2.常用类

常用类:经常使用的类

字符串:String

不可变长字符序列 String类表示字符串。 Java程序中的所有字符串文字(例如"abc" )都实现为此类的实例。 "abc" 字符串常量 --> 字符串常量池中-> 方法区 new String() --> 堆中

 

学习API类型: 了解类的作用与特点 学习构造器 学习方法 成员 非静态 静态的

底层分析: jdk11 ->使用字节数组存储字符串数据 private final byte[] value; jdk8 -> 使用字符数组存储字符串数据 private final char[] value;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值