挺好的,不僅僅把觀察者模式加進來了,而且加了擴展,也把模板方法模式的設(shè)計思想也加進來的,但是不知道老師有沒有意識到,這就是變通。。。佩服
2016-11-17
觀察者模式 觸發(fā)聯(lián)動
當一個抽象模型有兩個方面,其中一個方面的操作依賴于另一個方面的狀態(tài)變化
如果在更改一個對象的時候,需要同時連帶改變其他的對象,而且不知道究竟應該 有多少對象需要被連帶改變
當一個對象必須通知其他的對象,但是你又希望這個對象和其他的被通知的對象是松散耦合的
當一個抽象模型有兩個方面,其中一個方面的操作依賴于另一個方面的狀態(tài)變化
如果在更改一個對象的時候,需要同時連帶改變其他的對象,而且不知道究竟應該 有多少對象需要被連帶改變
當一個對象必須通知其他的對象,但是你又希望這個對象和其他的被通知的對象是松散耦合的
2016-10-28
this.notifyObserver() 和this.notifyObserver(Object objec) 方法應該測試一下,看看之間有無調(diào)用關(guān)系
2016-10-28
已采納回答 / 慕雪蕓茗
不管你有沒有傳參數(shù),,對象都會被傳過去,下面使他的遍歷通知代碼:for (int i = arrLocal.length-1; i>=0; i--)??????????? ((Observer)arrLocal[i]).update(this, arg);可見,當你沒有傳參數(shù)時,它的arg = null所以,怎么用,看你了!
2016-10-28
推模式,是假定目標對象知道觀察者需要的數(shù)據(jù)! 所以發(fā)送數(shù)據(jù)!
而;拉模型,只是傳一個引用,引用中g(shù)et 的數(shù)據(jù)屬性假如有很多的話! 不同的觀察者,需要的數(shù)據(jù)不同,用引用來,調(diào)取數(shù)據(jù),這樣比較靈活!
而;拉模型,只是傳一個引用,引用中g(shù)et 的數(shù)據(jù)屬性假如有很多的話! 不同的觀察者,需要的數(shù)據(jù)不同,用引用來,調(diào)取數(shù)據(jù),這樣比較靈活!
2016-10-27