「java火车订票」java火车订票系统改签代码
今天给各位分享java火车订票的知识,其中也会对java火车订票系统改签代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java编写火车售票系统
- 2、java多线程问题,火车票买票
- 3、java 多线程模拟火车售票系统问题
- 4、毕业设计是基于java火车抢票软件开发,思路不清晰,求指点下。
- 5、java火车订票程序
java编写火车售票系统
你说的这个程序应该是不难的,只不过N久没有写过javaswing 了
还有就是java没有多继承的,只有多实现接口的
继承的关键字是:extends
接口的关键字是:interface
java多线程问题,火车票买票
楼上答案是正解,你一直用一个对象的在set,共享了同一个对象.其实也没用新建5个对象.
可以set之后就开始执行.但是多线程的意义可能不大了.
package com.experiment9;
public class Ticket extends Thread {
public Ticket(String s){
super(s);
}
int num=100; //静态变量
public void run(){
while(true){
synchronized (" "){ //同步块实现多线程
if(num0){
try {
Thread.sleep(500); //线程休眠10毫秒
}catch (Exception e){
e.printStackTrace();
}
System.out.println(this.getName()+"------------------------"+(num--));
}
}
}
}
public static void main(String[] args) { //main 函数
Ticket ticket =new Ticket("5号窗口");
Thread thread_5=new Thread(ticket);
ticket.setName("一号窗口");
thread_5.start();
Thread thread_1=new Thread(ticket);
ticket.setName("二号窗口");
thread_1.start();
Thread thread_2=new Thread(ticket);
ticket.setName("三号窗口");
thread_2.start();
Thread thread_3=new Thread(ticket);
ticket.setName("四号窗口"); //为什么前面的set那么没用呢?
thread_3.start();
Thread thread_4=new Thread(ticket);
thread_4.start();
}
}
java 多线程模拟火车售票系统问题
在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张..用来检测同步是否正确...
毕业设计是基于java火车抢票软件开发,思路不清晰,求指点下。
这种东西一般是先去分析12306网站,了解每一步操作的http请求,然后通过java去模拟这些请求就可以了。
但是抢票软件的关键是在于破解其验证码系统,如果这个做不到的花,那么你的东西跟12306没什么区别,没什么价值。现在12306网站验证码变的比较勤,这个难度还是比较大的
多线程似乎也没什么用,都阻塞在了验证码输入上,快不了~ 除非破解验证码
java火车订票程序
没有资料,铁路不会开放给大众订票接口的。所以接口文档 协议 什么的都不要想。
想做的话,自己去研究下httpclient。
都是靠自己研究订票网站的页面,用httpclient模拟浏览器向服务器发请求,来实现订票的。就是有接口也会限制ip,或绑定证书。一般用不了的。
java火车订票的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java火车订票系统改签代码、java火车订票的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。