我有3個類的名稱是有代表性的,我打算使這個工作在mvc模式。java mvc可觀察模式
以下是類
public class view {
static int n;
static model Model=new model();
public static void main(String args[]){
Model.show(5);
System.out.println("The value is "+n);
}
}
public class model {
public interface Observer{
public void show(int n);
}
protected Observer observer;
public void setObserver(Observer observer) {
this.observer = observer;
}
public void show(int n)
{
System.out.println(n+1);
observer.show(5);
}
}
public class Logger implements model.Observer {
private view View;
public Logger(view View) {
this.View= View;
}
public void show(int n)
{
View.n=n;
}
}
我期待這個按以下順序
視圖調用模型,進而模型調用觀察者和觀察者的工作設置的值在視圖中。 但是,當我試圖調用觀察者時,它在模型中給了我一個空指針異常。 我做錯了什麼?
這裏的Observer模式的目的是什麼? –
教授說:「寫一個觀察者模式」;) –
當你不遵循java標準時,你很難閱讀你的代碼: static model Model = new model(); 應該如下所示: static Model model = new Model(); 那麼當你做model.show(); System.out可以工作,因爲System.out是一個靜態對象。 – n3wscott