我写的这个系统主要是洗股票工作原理 ,真真的股票系统我想一定比这个要复杂的多!着个程序只是让我们了解面的咱对象的意义!!!
要求:
要求在股票服务器中存储一些列不同股票的基本信息,包括股票号码,股票类型,上市公司,股票价格。在客户端实时显示股票信息,并且要求股票价格要实时变化。
分析:
1、
创建一个股票类,里面包括股票号码,股票类型,上市公司,股票价,股票的方法(get/set方法和构造函数),属性要私有,方法要公有。
2、
创建一个股票服务器类,当客户端需要调用股票信息时,用于需要时传递给客户端一组股票信息,
3、
创建一个股票客户端类,这个类需要实时显示股票浮动信息,因此需要调用服务器端的数据(通过一个获取方法),然后打印出来股票数组中每一个数据的基本信息,这样就实现了股票价格不断浮动显示的效果。
以下附该程序代码:
//股票类
package com.dr.stock;
public class Stock implements Comparable<Object> {
private int id;
private int num;
private String name;
private int price;
public String toString(){
return this.getId()+" "+this.getNum()+" "+this.getName()+" "+this.getPrice();
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
@Override
public int compareTo(Object obj) {
Stock s = (Stock)obj;
if(this.price<s.price){
return -1;
}
else if(this.price>s.price){
return 1;
}else{
return 0;
}
}
}
//服务器类
package com.dr.stock;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class StockServer {
private static List<Stock> stockList =new ArrayList<Stock>();
static{
Stock stock = new Stock();
stock.setId(01);
stock.setNum(2524);
stock.setName("hhg");
stockList.add(stock);
stock = new Stock();
stock.setId(02);
stock.setNum(2252);
stock.setName("smj");
stockList.add(stock);
}
public static List<Stock> getStockList(){
Random r = new Random();
for(Stock stock : stockList){
stock.setPrice(r.nextInt(100));
}
return stockList;
}
}
//客户端
package com.dr.stock;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;
public class StockClient {
public static void getStockListFromServer(){
List<Stock> stockList =StockServer.getStockList();
for(Stock s:stockList){
System.out.println(s.getId()+" "+s.getNum()+" "+s.getName()+" "+s.getPrice());
}
System.out.println("-------");
Set<Stock> s1 = new TreeSet<Stock>();
//s1.add(stockList);
s1.add(StockServer.getStockList().get(0));
s1.add(StockServer.getStockList().get(1));
for(Iterator<Stock> iter = s1.iterator();
iter.hasNext();
System.out.println(iter.next()));
System.out.println("##################");
}
public static void main(String[] args){
while (true){
getStockListFromServer();
try {
Thread.sleep(1000*3);
} catch (InterruptedException e) {
e.printStackTrace();
break;
}
}
}
}
//运行结果:
感谢阅读 !!!!!
希望提供宝贵的意见!!!