SimUDuck 策略模式
生活随笔
收集整理的這篇文章主要介紹了
SimUDuck 策略模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
添加一個 FlySuperDuck.java implement IFlyBehavior
在具體鴨子中可以擁有這種行為:
public ModelDuck()
{
this.flybehavior=newFlySuperDuck();
}
?
這樣就可以實現給某種鴨子添加某種行為。
在具體鴨子中可以擁有這種行為:
public ModelDuck()
{
this.flybehavior=newFlySuperDuck();
}
?
這樣就可以實現給某種鴨子添加某種行為
可以添加一種接口Ispeak,有一個speak方法。這樣鴨子們就有了另一種行為speak()。
父類中只需要添加一個speakbehavior,子類就可以有具體的實現。例如有一個DonaldSpeak實現了Ispeak接口,子類就可以擁有這個具體的行為n利用繼承來提供Duck的行為,這會導致下列哪些缺點?nA.代碼在多個子類中重復;
nB.運行時的行為不容易改變;
nE. 鴨子不能同時又飛又叫,不能有多繼承;
nF.改變會牽一發而動全身,造成其他鴨子不想要的改變;
本文出自 “Vincent” 博客,請務必保留此出處http://vincent1992.blog.51cto.com/4621739/1584889
總結
以上是生活随笔為你收集整理的SimUDuck 策略模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SessionFactory 概述
- 下一篇: VMware Ubuntu NAT上网方