我寫的這個系統主要是洗股票工作原理 ,真真的股票系統我想一定比這個要復雜的多!著個程序只是讓我們了解面的咱對象的意義!!!
要求:
要求在股票服務器中存儲一些列不同股票的基本信息,包括股票號碼,股票類型,上市公司,股票價格。在客戶端實時顯示股票信息,并且要求股票價格要實時變化。
分析:
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;
}
}
}
}
//運行結果:

感謝閱讀 !!!!!
希望提供寶貴的意見!!!