将Java程序打包成exe可执行文件
之一步:将Java程序通过Eclipse或者JRE导出成Jar包;
第二步:通过exe4j将Jar包程序生成exe可执行文件。
作为毕业设计,要求你交执行程序肯定是有办法实现的啊,当然你也可以用脚本执行,不过既然要交源码,都到这里了打包成exe也就用不了什么时间了
你说的这个程序应该是不难的,只不过N久没有写过javaswing 了
还有就是java没有多继承的,只有多实现接口的
继承的关键字是:extends
接口的关键字是:interface
在synchronized(str) 里加一句 if(ticket 0) //判断是否有余票,没有余票还卖什么?
也就是这样:
package socket;
public class Test
{
public static void main(String [] args)
{
TestThread tt=new TestThread();
new Thread(tt).start();
new Thread(tt).start();
new Thread(tt).start();
new Thread(tt).start();
}
}
class TestThread implements Runnable
{
int ticket=10;
String str=" ";
public void run()
{
while(ticket0)
{
synchronized(str)
{
if(ticket 0 ) {
System.out.println(Thread.currentThread().getName()+":ticket "+ticket+" is saling");
ticket--;
}
}
}
}
}
你的while循环只是超出票数的循环,在同步里面还要有判断是否有票的条件.因为里面同步的时候除了一个线程在执行外,其它几个都在等待,而此时并没有跳出循环,当然会出现负数了.
当然把while判断放到同步代码里面去也可以.不过这样就没有超出票数的判断了,实际应用中应该有个超出票数的判断.. 例如 :for(int i=0;i100;i++) //同步检测 只有5张票,显示100张,实际上卖出的还是5张..用来检测同步是否正确...
说简单点,需求出来了啥都好写。
就是一个资源管理,涉及到一些并发处理。