异常 线程

异常和错误的区别

Object |-- Throwable

                        |--Error:是严重错误

                        |--Expection:编译异常

                                    |--RuntimeException 运行异常

异常的分类

Expection:编译期异常 受检异常.

1.要么try-catch处理.

2.要么throws抛出.

RunTimeExpection:运行异常 非受检异常.

1.可以try-catch处理.

2.也可以throws抛出.

3.还可以不理会,默认也会throws抛出.

Throwable当中的常用方法:

获取细节信息:getMessage().

获取概要信息:toString().

打印栈信息:printStackTrace()红字儿.

虚拟机处理异常的方式

1.提示异常(System.err)显示异常信息.

2.停掉程序.

常见的运行期异常

ArraysIndexOutOfBoundsExpection

StringIndexOutOfBoundsException

IndexOutOfBoundsException

NullPointerException

ArithmeticException

ClassCastException

NoSuchElementException

ConcurrentModificationException

UnsupportedOperationException

IllegalArgumentException

FileNotFoundException

IOException

RuntimeException

使用try...catch关键字处理异常

try{

可能出现异常的代码

} catch (异常代码 e){

处理异常代码

}

try-catch-finally语句:

try{

} catch (A a) {

} finally {

// 一定会被执行的语句

}

注意事项:

1. 可以一个try后面多个catch语句,但是如果有继承,必须子类异常在前,父类异常在后。

try {

} catch (A a) {

} catch (B b) {

}

2. 也可以一个catch语句中间多种异常,但是互相之间不能存在继承关系。

try {

} catch (A | B | C ex) {

}

3. 可以是try-catch,也可以try-catch-finally,还可以try-finally。但是不能只有try或者没有try。

4. 覆盖重写方法的时候,必须保证子类方法的throws异常范围【小于等于】父类范围。:

使用throws关键字处理异常

throw关键字:

含义:主动抛出一个异常

格式:throw new 异常类(参数)

异常类 异常对象名 = new 异常类(参数);

throw 异常对象名;

throws关键字:

含义:是一种修饰符,代表方法中出现了异常我不处理,谁调用谁处理.

格式:

修饰符 返回值类型 方法名称(参数类型 参数名称) throws 异常 A, 异常 B{...

}

自定义异常类

1.定义一个类,继承一个已经存在的异常类.

2.编写一个无参构造方法.

3.编写一个String参数的构造方法,并调用super(String).

处理自定义异常类

和处理普通异常一样

可以用try-catch捕获

或者throws抛出

进程线程的概念

进程:操作系统中正在运行的程序.

线程:进程之内多任务的执行单位.

并发与并行的区别

并发:一个时间段内"同时"运行,可能穿插.

并行:每一个时间点上全都是同时运行.

java只能保证并发

开启新线程

1.定义一个类,继承Tread类.

2.覆盖重写public vloid run(){ }方法,用来指定线程运行内容.

3.调用Start方法启动进程.

注意:

不能自己调用run方法,否则没有多线程效果.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值