黑马程序员技术交流社区
标题:
求帮忙改改代码
[打印本页]
作者:
911288373
时间:
2012-12-31 17:03
标题:
求帮忙改改代码
//先定义一个Ticket类
class Ticket
{
private String hcp;//数量
public Ticket(String paramHcp)
{
this.hcp = paramHcp;
}
public String getHcp(){
return this.hcp;
}
}
//在SealWindow中打印Ticket的相应值(数量)
public class SealWindow implements Runnable
{
private static in tick = 100;
boolean flag = true;
public void run()
{
if(flag)
{
while(true)
{
synchronized(SealWindow.class)
{
if(tick>0)
{
try(Thread.sleep(10);}catch(Exception e){}
System.out.println(Thread.currentThread().getBane()+tick--);
}
}
}
}
else
while(true)
show();
}
public static synchronized void show()
{
if(tick>0)
{
try(Thread.sleep(10);}catch(Exception e){}
System.out.println(Thread.currentThread().getBane()+tick--);
}
}
}
class TicketSealCenter
{
public static void main(String[] args)
{
Ticket tk = new Ticket(100);
System.out.println("票数: "+tk.getSl());
Ticket t = new Ticket();
Thread t1 = new Thread(t);
Thread t2 = new Thread(t);
t1.start();
try{Thread.sleep(10);}catch(Exception e){}
t.flag = false;
t2.start();
}
}
作者:
张会文
时间:
2012-12-31 19:21
你具体要改成什么样子?有什么要求啊?
作者:
cyh8807
时间:
2012-12-31 20:30
本帖最后由 赵彦辉 于 2012-12-31 20:38 编辑
回复之前先给你提几点意见:
1、贴代码时建议使用 code 模式,这样方便程序员阅读你的代码
2. 建议你写代码时注意格式,别人修改你代码时也不用要为格式浪费很长时间
3,遇到问题,首先想到的是自己思考,你要完成的这段代码是 毕老师视频中有讲解的
你可以多看几遍那段视频
下面是我给你修改的代码,希望对你有帮助
注:建议把代码放到 UltraEdit里面阅读,在论坛看着比较费劲
//先定义一个Ticket类
class Ticket
{
public int hcp;//数量
public Ticket(int paramHcp)
{
this.hcp = paramHcp;
}
public int getHcp() {
return this.hcp;
}
}
//在SealWindow中打印Ticket的相应值(数量)
class SealWindow implements Runnable
{
private Ticket t;
// private static in tick = 100;
boolean flag = true;
SealWindow(Ticket t)
{
this.t = t;
}
public void run()
{
if(flag)
{
while(true)
{
synchronized(SealWindow.class)
{
if(t.hcp > 0)
{
try{Thread.sleep(10);}catch(Exception e){}
System.out.println(Thread.currentThread().getName() +"---run" + t.hcp--);
}
}
}
}
else
while(true)
{
show();
}
}
public synchronized void show()
{
if(t.hcp > 0)
{
try{Thread.sleep(10);}catch(Exception e){}
System.out.println(Thread.currentThread().getName() + "_________show" + t.hcp--);
}
}
}
public class TicketSealCenter
{
public static void main(String[] args)
{
Ticket tk = new Ticket(100);
System.out.println("票数: " + tk.getHcp());
SealWindow seal = new SealWindow(tk);
Thread t1 = new Thread(seal);
Thread t2 = new Thread(seal);
t1.start();
try{Thread.sleep(10);}catch(Exception e){}
seal.flag = false;
t2.start();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2