1.throw和throws的区别?
(1)throw 是在(方法内部)创建一个异常对象,执行该语句体时,会立即停止程序的执行.
(2)throws 是方法的异常声明,声明位置: (方法(参数) throws 异常类名),是声明方法体内出现的异常对象,声明多个异常用逗号隔开,方法声明的异常会交给方法的调用者进行处理.
2.异常有几种处理方式?
两种处理方式:
(1)throws 声明异常:
1.声明格式:
修饰符 返回值类型 方法名(参数) throws 异常类名1,异常类名2…{ }
2.将方法内抛出的异常在方法参数后面进行声明,会把异常交给调用着处理,
(2)try..catch 捕获处理异常
1.使用格式:
try{
编写可能会出现异常的代码
}catch(异常类型 e){
处理异常的代码
//记录日志/打印异常信息/继续抛出异常
}
2.捕获(可能有异常的代码)处理后面还有代码的话也会被执行
3.什么是进程,什么是线程?
(1)进程: 一个应用程序在内存运行的时候称为进程,是系统运行程序的基本单位,每一个应用程序可以有多个进程,一个进程可以有多个线程.
(2)线程: 负责当前进程中程序的执行,每一个进程中至少有一个线程.
4.run()方法和start()方法的区别?
(1)继承 Thread 线程类,重写run()方法,run()方法的方法体是线程需要完成的任务.
(2)创建 Thread 的子类对象,调用 start() 方法,开启一个子线程任务,执行的是run()方法中的任务.
注意:
(3)创建 Thread 的子类对象调用run的话,只是执行了run()方法的方法体内容,并不是开启了一个子线程任务.
(4)不能多次启动同一个线程,一个线程结束后,不能再重新启动该线程
(5)正确创建多线程任务: 创建 Thread 的子类,重写父类的run()方法,并创建 Thread 子类对象,通过子类对象调用父类Start()方法,开启子线程任务
|