share.java

来自「java中最响当当的模式:观察者模式」· Java 代码 · 共 46 行

JAVA
46
字号
/**
the share class
*/

import java.util.ArrayList;
public class Share extends AbsSubject
{

	private double charge;
	public Share()
	{
		super();
	}

    /*the following three functions can register the observers*/
    public void registerObserver(Observer o)
	{
		getObserver().add(o);
	}

	public void removeObserver(Observer o)
	{
		int i = getObserver().indexOf(o);
	    if (i >= 0)
	    {
	        getObserver().remove(i);
		}
	}
	public void notifyObservers()
	{
		for (int i = 0; i < getObserver().size(); i++)
		{
		    Observer observer = (Observer)getObserver().get(i);
		    observer.update(charge);
		}
	}
	/*do update*/
	public void doUpdate(double charge)
	{
		  this.charge=charge;
		  notifyObservers();
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?