学习异常多线程的心得

在我们编写的代码中,会出现两种特殊情况,
一个是错误,这个是无法自己处理的,只能在编写的时候尽量避免错误,
另一种就是异常,而异常分为受查异常也即是编译异常,这个是冒红线的只要我们在编译器处理就可以运行,所以他是必须处理才能正常运行,而另一种运行时异常是可以不用处理也可以处理的,他是在编译期间看不出来的,只有当程序跑起来了才能知道有无异常,这个如果我们不处理的话就交由了JVM虚拟机处理了。

异常处理有两种方式一个事throws声明异常,这个如果传递链太多,我们声明起来就会很麻烦,每一个传递的方法我们都需要声明,而且一直要声明到main方法,一般来说,只要是在main中发生的我们采用这种声明,
另一种就是try-catch-finally进行处理,try大括号内的是可能出现异常的代码,catch捕获异常的类型(注意异常的类型范围要从小到大进行)finally这个是不管程序有无异常都要在try-catch-finally结构结束前执行finally内的代码。

多线程
多线程一定要理解线程的组成,他们获取的时间片都是随机的而且长短不一,在同一时刻只能有一个线程有时间片,多个线程并发访问同一个对象可能会造成对象数据的混乱,这是我们一定要注意上锁,我们可以根据实际情况来选择要上哪个锁。
线程池让线程得到了复用减少了我们内存消耗。各个线程安全的集合他们的各个方法都是在底层加了锁或者采用了算法来避免了并发产生的数据混乱。

这个时候可以多阅读API和源码,要体会前辈们的思想,怎么做到一个安全和效率一个基本持平的方法。多体会前人的编程思想。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值