`

追女仔

 
阅读更多
模拟一个场景:
Meten和Eric同时喜欢上了一个妹妹Janet,这两个人就开始追了
Eric追Janet的方式是牺牲色相,他追了50次
Meten追Janet的方式用的是金钱,我追了30次

在追的过程中,如果打印meten的追女孩子的方式有一次是色相,那么这个程序就错了
   或者如果打印Eric追女孩子的方式有一次是金钱,那么这个程序就错了

提醒:共享数据,但不共享代码

public class Exec5Demo {
 
 /**
  * 共享数据的时候,为了防止出现脏数据,应加锁
  */

 public static void main(String[] args){
  
  Girl girl = new Girl("Janet");
  Runnable chasingTarget = new ChasingGirlTarget(girl,"用金钱");
  Thread chTarget = new Thread(chasingTarget,"Meten");
  Thread chasingGirlTarget = new ChasingGril(girl,"牺牲色相","Eric");
  
  chTarget.start();
  chasingGirlTarget.start();
 }
}


class Girl{
 
 private String name; 
 
 public Girl(String name){
  this.name = name ;
 }

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }
 
}

/**
 * Eric
 * @author Administrator
 *
 */
class ChasingGril extends Thread{
 
 private Girl girl;
 private String method;
 
 public ChasingGril(Girl girl,String method,String name){
  
  super(name);
  this.girl = girl ;
  this.method = method;
  
 }
 public void run(){
  
  String name = Thread.currentThread().getName();
  System.out.println(name + "喜欢上" + this.girl.getName());
  System.out.println(name + "开始追" + this.girl.getName());
  synchronized(girl){
   
   for(int i = 0 ; i < 50; i++ ){
    System.out.println(name+this.method+"追"+this.girl.getName() );
    try {
     Thread.sleep(1000);
    } catch (InterruptedException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }
}

/**
 * Meten
 * @author Administrator
 *
 */
class ChasingGirlTarget implements Runnable{
 
 private Girl girl ;
 private String method ;
 public ChasingGirlTarget(Girl girl , String method ){
  
  this.girl = girl ;
  this.method = method ;
 }
 
 public void run(){
  
  String name = Thread.currentThread().getName();
  System.out.println(name + "喜欢上了" + this.girl.getName());
  System.out.println(name + "开始追" + this.girl.getName());
  synchronized(girl){
   
   for( int i = 0 ; i < 30 ; i++){
    System.out.println(name + this.method + "追" + this.girl.getName());
    try {
     Thread.sleep(1000);
    } catch (InterruptedException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }
}
 

 

0
3
分享到:
评论

相关推荐

    追女友专用

    然而,"追女仔"这一标签以及"追女朋友专用"的压缩包文件名称仍旧没有提供具体的IT技术或知识内容。在当前的指导下,我无法生成符合要求的IT专业内容。如果能提供更详细的IT相关的信息,例如软件类型、功能、技术实现...

    GBA图书仔2 0.9版

    《GBA图书仔2 0.9版》是一款专为Game Boy Advance(GBA)平台设计的电子书制作工具,其主要功能是将普通的TXT文本文件转换为GBA设备能够识别并阅读的格式。这款软件的出现,极大地扩展了GBA游戏机的功能,使其不再...

    六仔源码带数据库

    "六仔源码带数据库"是一个针对特定项目或应用的源代码集合,通常包含了实现某种功能或服务的完整代码结构。这里的"六仔"可能是该项目的昵称或者特定的命名,而“源码”指的是编写软件时用的各种编程语言(如Java、...

    六仔php源码

    【标题】"六仔php源码"所涉及的是一个基于PHP编程语言的网站源代码,通常这类源码可能是一个小型的在线平台或者服务的后台系统。PHP是一种广泛使用的开源脚本语言,尤其在Web开发领域中,它被用于服务器端处理,与...

    宝仔视觉空间宝仔视觉空间

    宝仔视觉空间宝仔视觉空间宝仔视觉空间宝仔视觉空间

    明仔PHP精品教程全集

    明仔PHP精品教程全集内容包含:明仔AJAX教程一看就会,明仔CSS+DIV一分钟学会,明仔PHP+SMARTY留言本(全注释版本),明仔PHP翻译,明仔万能换CSS样式,明仔半小时精通正则表达式,明仔十天学会SMARTY精选教程。

    et2009小哥仔

    服装CAD类,可以打版,放吗,排料。可以1:1输出

    IVBD『大眼仔旭变声器内置教程』

    【IVBD『大眼仔旭变声器内置教程』】是一个由IVBD团队精心整理并获得麒麟安全组授权的变声软件教程。这个教程主要针对的是"大眼仔旭变声器",一个广泛应用于游戏、语音聊天和娱乐场景的变声工具。通过这个教程,用户...

    大陆仔天气预报 v1.0

    大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: ● 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) ● 支持用户搜索中国和国外城市的天气预报 ● 将能够查询...

    明仔php精品教程

    明仔的php精品教程,包括ajax,div+css,正则,smarty

    初中语文文摘生活民间打拐勇士仔仔

    这个故事讲述了民间打拐勇士仔仔的事迹,他是一个退伍的武警战士,致力于打击人口贩卖,尤其是儿童拐卖。仔仔通过网络监控,识别出人贩子的暗语,并与他们周旋,协助警方解救被拐儿童。 1. **网络监控与反拐策略**...

    石器时代 吉仔 源代码

    【标题】"石器时代 吉仔 源代码"涉及的是一个名为“吉仔”的项目,该项目在石器时代版本中的源代码被提及。在IT领域,源代码是程序员用高级编程语言编写的原始程序,它直接反映了软件的设计思路和实现逻辑。"石器...

    死仔截图附使用说明

    【死仔截图】是一款基于C#编程语言开发的截图软件,其主要功能是方便用户快速、高效地捕获屏幕图像。作为一个C#编程的实例,它展示了如何利用.NET框架中的图形处理类库来实现截图功能。以下是关于这款软件及其使用的...

    明仔中文网の卖Q程序

    明仔中文网の卖Q程序

    大眼仔录屏工具,免费版

    免费版的录屏工具,非常好用。

    仔仔学数学源码 C#4

    【仔仔学数学源码 C#4】是一个专门为幼儿园及小学生设计的数学运算软件,旨在帮助孩子们学习和掌握万位数以内的基本算术运算。这个项目采用C#编程语言的第四版本(C#4)编写,展示了如何利用C#的强大功能来创建教育...

    洪仔排课软件 v2017.88.zip

    洪仔排课软件是一款专业好用的教学排课软件。软件适用于中小学以及各类辅导机构,可轻松解决跨年级、跨学科的排课设计,实现教学进度一致,教研活动、会议时间固定,单双周课、合班课、选修课、预排课、临时调课、...

    明仔中文网ASP手机交友程序 1.0.rar

    明仔中文网ASP手机交友程序,改改就能用 支持微信访问和UC9。0访问 也可以电脑访问 1首页有几个连接要改 首页地址ssindex.asp 2传照片要上传到服务器 3在就是改搜索页面和注册页面的地名 4在就是用户详细资料...

    大陆仔天气预报查询源码v1.0

    大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: ● 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) ● 支持用户搜索中国和国外城市的天气预报 ● 将能够查询未来...

Global site tag (gtag.js) - Google Analytics