Java多线程和枚举类型应用.doc

Java多线程和枚举类型应用.doc

ID:62051555

大小:60.00 KB

页数:10页

时间:2021-04-16

Java多线程和枚举类型应用.doc_第1页
Java多线程和枚举类型应用.doc_第2页
Java多线程和枚举类型应用.doc_第3页
Java多线程和枚举类型应用.doc_第4页
Java多线程和枚举类型应用.doc_第5页
资源描述:

《Java多线程和枚举类型应用.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、个人收集整理勿做商业用途Java多线程和枚举类型应用lJava多线程针对于计算机cpu而言,同一时间完成多个任务(实际:计算机cpu在同一时间只能做一件事情)。计算机能够将cpu处理的时间点分割成微小的时间片段(人没有办法察觉),让多个任务根据任务的优先级去执行。从而给人造成一个时间(人能够体会时间)感觉好像多个任务同时执行。lJava支持多线程。提供两种方式来处理多线程程序。nJava api提供了Thread类,让想实现多线程功能的类去extends这个类,从而该子类就具备多线程的功能。n对于已经继承了某个父类的子类来说,如果这个子类需要实现多线程任务,

2、根据java单一继承的规定,该子类不能extendsThread,所以java提供了一个Runable接口,让该子类implements该接口,从而完成多线程的任务。MainFun1Fun2创建新执行线程有两种方法。一种方法是将类声明为Thread的子类。该子类应重写 Thread类的 run方法。接下来可以分配并启动该子类的实例。例如,计算大于某一规定值的质数的线程可以写成:   class PrimeThreadextendsThread{  longminPrime;     PrimeThread(longminPrime){   this.minP

3、rime=minPrime;    }  publicvoidrun(){    //computeprimeslargerthanminPrime个人收集整理勿做商业用途      . . . } }然后,下列代码会创建并启动一个线程:   PrimeThreadp= newPrimeThread(143); p.start(); 创建线程的另一种方法是声明实现 Runnable接口的类。该类然后实现run方法。然后可以分配该类的实例,在创建Thread时作为一个参数来传递并启动。采用这种风格的同一个例子如下所示: classPrimeRunimpleme

4、nts Runnable{     longminPrime; PrimeRun(longminPrime){   this.minPrime=minPrime;  } publicvoidrun() {    //computeprimeslarger thanminPrime  . . . }  }然后,下列代码会创建并启动一个线程: PrimeRun p=new PrimeRun(143); newThread(p).start(); 每个线程都有一个标识名,多个线程可以同名。如果线程创建时没有指定标识名,就会为其生成一个新名称。l多线程的应用n举例:

5、package com.wokit.part1;public class Demo01 extendsThread {个人收集整理勿做商业用途ﻩprivateStringname;ﻩﻩpublicDemo01(String name){ﻩsuper();ﻩthis.name= name;ﻩ}/**ﻩ*@paramargsﻩ*/ﻩpublicstatic voidmain(String[]args) {ﻩ//TODO Auto-generated methodstubDemo01 aa =newDemo01("子线程");aa.start();ﻩﻩfor(in

6、ti= 0;i<5;i++){ﻩﻩSystem.out.println("主程序start:"+i);ﻩﻩﻩtry {ﻩThread.sleep(1000);ﻩﻩ} catch (InterruptedExceptione){ﻩﻩ// TODOAuto-generated catchblockﻩe.printStackTrace();ﻩ}ﻩﻩ}ﻩﻩ}ﻩ@Overridepublicvoidrun(){ﻩ//TODO Auto-generatedmethodstubﻩsuper.run();ﻩfor(inti = 0;i<5;i++)ﻩ{ﻩﻩSystem.ou

7、t.println(this.name+"start:"+i);ﻩﻩtry{ﻩthis.sleep(1000);ﻩﻩ}catch(InterruptedExceptione) {ﻩﻩ// TODO Auto-generated catchblockﻩe.printStackTrace();ﻩﻩ}ﻩ}ﻩﻩﻩ}}n举例2:package com.wokit.part1;个人收集整理勿做商业用途publicclass Demo02implementsRunnable{ﻩprivateStringname;ﻩﻩpublicDemo02(Stringname) {ﻩs

8、uper();this.name=name;}@Ov

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。