java 学习笔记

本文围绕Java展开,介绍了多线程和异常处理两方面内容。多线程方面,阐述了线程基本概念,如将程序转换为子任务,进程可容纳多线程,还说明了创建线程及重要方法。异常处理部分,讲解了例外机制、基本违例、捕获方法、标准规范及相关说明。

JAVA的多线程

 

一、线程基本概念

1个程序转换成多个独立运行的子任务。每个子任务都叫做一个线程。

“进程”是指一种“自包容”的运行程序。有自己的地址空间。一个进程可以容纳多个同时执行的线程。

  事实上,多线程最主要的一个用途就构建1个“反应灵敏”的用户界面。

 

二、线程的使用

1、  创建一个线程

         最简单的方法就是从Thread类继承这个类,包含了创建和运行线程所需的一切东西。

Thread最重要的是run方法,继承类必须对之进行重载,使其按自己的意愿来做事。

   

2、线程的几个重要方法

(1)    run方法

start方法激活线程时,线程要运行的方法

 

(2)    start方法

            当线程创建后,处于待命状态,只有调用start方法才能激活,使之运行

 

(3)    setpriority方法

设置线程的优先级,例:Thead.setpriority(5).

优先级高的线程先执行。

 

Java Error Handing with Exceptions

一、例外机制

1、  强制捕获错误

2、  便于将业务逻辑代码与例外控制代码分开。

二、基本的违例

1、  要区分“例外条件”(exceptional condition)与“普通问题”

1)      例外条件:没有足够的上下文来处理出现的问题。

2)      普通问题:有足够上下文来处理问题

2、  仍出一个例外时,Java将要做的事:

1)      在堆中,用new创建一个例外对象(exception object)

2)      程序停止正常的运行,并由例外控制器(exception handler)来解决发生的问题。

3、  Throwable对象

针对不同的错误类型,要求throw 不同的例外处理对象。

错误的信息在throwable 对象及throw 例外对象的对象中保存。

 

 三、例外的捕获

1、  假如一个方法throw一个例外,它必须假定这个例外将被捕获(catch).

2、  警戒区域(guarded region)

可能出现例外的code region

try

{

   guarded region

 

}

你可以将要检查错误的代码置于try块中,并在随后捕获可能出现的错误。

   

3、例外控制器(Exception Handlers

try

{

      //code that  might generate exceptions

 

}

catch(Type id1)

{

     //Handle exceptions of Type1

 

}

catch (Type id2)

{

     //Hand exceptions of Type2

 

}

//etc

 

说明:有时catch clause 的参数在程序中并没有使用,但参数仍必须给出。

 

    四、例外标准(规范)

1、  如果类的一个方法中,可能会“掷”出异常,则在类方法的定义时,要说明违例类型。

           void f() throws tooBig,tooSmall,divZero

{

 

 

}

 

2、  如果一个方法声明时带了“throws”声明,则调用者必须对异常进行捕获,这是Java编译器所强制的。

 

3、即使,在方法中你实际没有“掷出”异常,你仍可以用”throws”关键字。

 

  五、异常处理的几点说明

1、可以在一个abstract class类的方法声明中使用throws关键字

2、如果方法声明中带throws参数,调用者必须对之捕获。

  3catch  子句  catch (异常类 异常类变量)

  4、当重载一个方法时,你只能throw基础类中定义的异常类型。

      这种限制,不适合类的构造函数。

  5、违例匹配

(1)    掷出一个异常后,异常控制系统会按当初编写的顺序搜索最近的控制器

(2)    一个衍生类对象可与基础类的一个控制器相匹配

(3)    如果catch子句的基础类在前,会编译报错。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值