2024/11/29

软件设计实验二十一

[实验任务一]:股票提醒
当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。
实验要求:
1.    画出对应类图;
 
2.    提交源代码;
public interface Observer {

    public void rise();
    public void fell();
}

public class Sucker implements Observer{
    private String name;
    public Sucker(String n) {
        // TODO Auto-generated constructor stub
        name=n;
    }

    @Override
    public void rise() {
        // TODO Auto-generated method stub
        System.out.println(name+"买了一些股票(股票升了)");
    }

    @Override
    public void fell() {
        // TODO Auto-generated method stub
        System.out.println(name+"股票跌了,哭了");
    }
}

public abstract class Subject {
    protected ArrayList<Observer> olist=new ArrayList<>();
    public Subject() {
        // TODO Auto-generated constructor stub
    }
    public void add(Observer o) {
        olist.add(o);
    }
    public void remove(Observer o) {
        olist.remove(o);
    }
    public abstract void up(double a);
    public abstract void down(double a);

}

public class Stock extends Subject{
    @Override
    public void up(double a) {
        if(a>0.05)
            for(Observer gum : olist){
                gum.rise();
            }
    }

    @Override
    public void down(double a) {
        if(a>0.05)
            for(Observer gum:olist){
                gum.fell();
            }
    }
}

 

posted @ 2024-11-29 20:00  伐木工熊大  阅读(3)  评论(0)    收藏  举报