- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
25 异常
1. 异常的定义
对应Java中的一组API。
代表了系统中可能出现的一些错误信息。
2. 异常的作用
提高系统的容错能力。
提高系统的交互性。
3. 异常的分类
系统级别的异常: 代表类Error。
应用级别的异常: 代表类Exception。
无论是Error还是Exception它们都继承了一个统一的父类Throwable。
4. 异常的处理方式
系统级异常通过程序一般无法处理。
应用级异常通常借助程序处理。
对于应用级的异常在处理时又可以分为两个体系:
检查异常 (必须处理)
检查异常一般指的是编译器能够检测到的异常。(代表类Exception)
非检查异常(可以不处理)
非检查异常(又称之为运行时异常)一般指的是编译器检测不到的异常。(代表类RuntimeException)
5. 异常处理的手段
要么继续抛出
例:public void doMethod() throws IOException{}
要么捕获
try {} catch(Exception e) {}
try {} catch(Exception e) {} catch (RuntimeException) {}
try {} catch(Exception e) {} finally {}
try {} finally {}
6. 异常链
例: public void doMethod1() throws Exception {}
public void doMethod2() throws Exception {
doMethod1();
}
public void doMethod3() throws Exception {
doMethod2();
}
7. 自定义异常
当官方提供的异常对象不能完全满足我们的业务要求时,可以根据实际需要自己定义异常,自己定义的异常要继承Exception或RuntimeException。
例: class UserException extends Exception{
Public UserException(Throwable e){
Super(e);
}
}
在继承父类异常时通常自己定义构造方法调用父类的构造方法,使用自定义异常的目的主要为了更加精准的定位错误信息。
例: NullPointerException:空指针异常
ArrayIndexOutputBoundsException:数组下标越界异常
LogonException: 定义登陆时出现的错误
RegException: 注册时出现的错误
25.1 线程
1. 进程定义
进程是指正在运行的程序。例:正在运行的Eclipse、QQ、浏览器、、、
2. 线程的定义
线程是进程中的一个顺序的执行流,线程是进程中的最小的执行单位,一个进程中可以启动很多线程,多个线程可以并发执行,一个线程内部的若干个操作要顺序执行。
对于单核CPU来说,多个线程在某个时间点只能有一个线程在执行。
对于多核CPU来说,在某个时间点可以有多个线程同时执行,这个过程称之为并发执行。
在Java中线程就是一个对象,而此对象也有相应的API。对于一个系统而言,通常会有多个任务,假如多个任务需要并发执行,此时就需要有多个线程。JVM虚拟机是一个进程。
Thread t=Thread.currentThread().getName();//获取当前正在运行的线程的名字(线程是运行在进程中)。
通常将main线程理解为主线程,所以一个程序最少有一个线程在运行。通常在主线程中创建一个线程,并启动它。
2. 多线程的作用
1) 提高工作效率
2) 提高交互性。(改善用户的体验度)
3. 线程对象的创建
1) 借助Thread() 构造方法
例1:class SubThread extends Theread{
public void run(){}
}
new SubThread().start();
例2:new Thread(){
public void run(){}
}.start();
例3:class Task implements Runalble{
public void run(){}
}
new Thread(new Task()).start();
例4: new Threa(new Runable(){
Public void run(){、、、、、}
}).strat();
4
您可能关注的文档
最近下载
- 黑龙江省哈尔滨德强高级中学2024-2025学年高一下学期7月期末英语试题(含答案).docx VIP
- (正式版)S-H∕T 3541-2024 石油化工泵组施工及验收规范.docx VIP
- 文桥中学少年宫素描组活动计划.doc VIP
- 家电生产产品检测员岗位责任制.doc VIP
- 火灾报警控制器标准GB4717-2024专题培训.pptx
- 缓解学习压力与调整心态主题班会PPT课件.pptx VIP
- 钢纤维混凝土破坏机理及力学性能试验报告.docx VIP
- 浙教版人自然社会三年级第9课 避暑胜地莫干山 课件.ppt VIP
- 黑龙江省哈尔滨第三中学2024-2025学年度高一下学期期末考试生物学试卷(含答案).pdf VIP
- 主题一 2.我做非遗小传人 综合实践活动教科版六年级上册.ppt
文档评论(0)