天天小说网

22.1 韩非子身边的卧底是谁派来的

//首先李斯是个观察者,一旦韩非子有活动,他就知道,他就要向老板汇报

public void update(String str) {

System.out.println("李斯:观察到韩非子活动,开始向老板汇报了...");

this.reportToQinShiHuang(str);

System.out.println("李斯:汇报完毕...\n");

//汇报给秦始皇

private void reportToQinShiHuang(String reportContext) {

System.out.println("李斯:报告,秦老板!韩非子有活动了--->"+reportContext);

两个重量级的人物都定义出来了,间谍这个“卑鄙”小人是不是也要登台了,如代码清单22-5所示。

代码清单22-5 间谍

class Spy extends Thread {

private HanFeiZi hanFeiZi;

private LiSi liSi;

private String type;

//通过构造函数传递参数,我要监控的是谁,谁来监控,要监控什么

public Spy(HanFeiZi _hanFeiZi,LiSi _liSi,String _type) {

this.hanFeiZi =_hanFeiZi;

this.liSi = _liSi;

this.type = _type;

@Override

public void run() {

while(true) {

if(this.type.equals("breakfast")) {

//监控是否在吃早餐

//如果发现韩非子在吃饭,就通知李斯

if(this.hanFeiZi.isHavingBreakfast()) {

this.liSi.update("韩非子在吃饭");

//重置状态,继续监控

this.hanFeiZi.setHavingBreakfast(false);

}else {

//监控是否在娱乐

if(this.hanFeiZi.isHavingFun()) {

this.liSi.update("韩非子在娱乐");

this.hanFeiZi.setHavingFun(false);

监控程序继承了java.lang.Thread类,可以同时启动多个线程进行监控,Java的多线程机制还是比较简单的,继承Thread类,重写run()方法,然后new SubThread(),再然后subThread.start()就可以启动一个线程了。我们建立一个场景类来回顾一下这段历史,如代码清单22-6所示。

代码清单22-6 场景类

public class Client {

public static void main(String[] args) throws InterruptedException {

//定义出韩非子和李斯

LiSi liSi = new LiSi();

HanFeiZi hanFeiZi = new HanFeiZi();

//观察早餐

Watch watchBreakfast = new Watch(hanFeiZi,liSi,"breakfast");

//开始启动线程,监控

watchBreakfast.start();

//观察娱乐情况

Watch watchFun = new Watch(hanFeiZi,liSi,"fun");

watchFun.start();

//然后我们看看韩非子在干什么

Thread.sleep(1000);

//主线程等待1秒后后再往下执行

hanFeiZi.haveBreakfast();

//韩非子娱乐了

Thread.sleep(1000);

hanFeiZi.haveFun();

运行结果如下所示:

韩非子:开始吃饭了...

李斯:观察到韩非子活动,开始向老板汇报了...

李斯:报告,秦老板!韩非子有活动了--->韩非子在吃饭

李斯:汇报完毕

韩非子:开始娱乐了...

李斯:观察到韩非子活动,开始向老板汇报了...

李斯:报告,秦老板!韩非子有活动了--->韩非子在娱乐

李斯:汇报完毕

结果出来,韩非子一吃早饭李斯就知道,韩非子一娱乐李斯也知道,非常正确!结果正确但并不表示你有成绩,我告诉你:你的成绩是0,甚至是负的!你有没有看到你的CPU飙升,Eclipse不响应状态?看到了?看到了你还不想为什么?!看看上面的程序,别的就不多说了,使用了一个死循环while(true)来做监听,要是用到项目中,你要多少硬件投入进来?

你还让不让别人的程序运行了?!一台服务器就跑你这一个程序就完事!

错误也看到了,我们必须要修

更多内容加载中...请稍候...

若您看到此段落,代表章节内容加载失败,请关闭浏览器的阅读模式、畅读模式、小说模式,以及关闭广告屏蔽功能,或复制网址到其他浏览器阅读!

新书推荐

魔法使苍崎青子事件簿 红楼道爷 致郁系编剧 下海后,遇见魔女小姐 人在柯南,但是修罗场 诸天万古道 我在修仙界趋吉避凶 苟在美食的俘虏 从有风的地方开始的文娱 全民废土:我能无限强化避难所