首先请出今天的主人公——“黑旋风”李逵



李逵:“我是不是萌萌哒?” 


一部《水浒传》说尽了一群英雄好汉的悲欢离合!经典著作的水浒,含蓄地概括了中国各个朝代的变迁和演变,客观地揭露了顽固的中国伦理道德,以及那些伦理道德对国人的愚弄和危害。

故事剧情

宋江酒后在浔阳楼 <https://baike.baidu.com/item/%E6%B5%94%E9%98%B3%E6%A5%BC>上题诗,被无为军
<https://baike.baidu.com/item/%E6%97%A0%E4%B8%BA%E5%86%9B>在闲通判黄文炳
<https://baike.baidu.com/item/%E9%BB%84%E6%96%87%E7%82%B3>解读为反诗,向江州蔡九知府蔡得章
<https://baike.baidu.com/item/%E8%94%A1%E5%BE%97%E7%AB%A0>
告发,宋江因此被打入大牢。其后戴宗为救宋江,传了一封梁山泊
<https://baike.baidu.com/item/%E6%A2%81%E5%B1%B1%E6%B3%8A>
造的假信,亦被黄文炳识破。宋、戴二人被判死刑,押到十字路口待斩。 [14]  <>


为救二人,梁山二十余条好汉赶到江州,劫了法场。李逵在不知梁山方面行动的情况下,也独自从预先藏身的楼上跳下,砍翻两个刽子手,与梁山众人同时在法场里厮杀。救出宋、戴二人后,李逵杀得性起,逢人便砍,梁山首领
晁盖 <https://baike.baidu.com/item/%E6%99%81%E7%9B%96>
对他喝阻也无效。其后李逵和梁山众人打入无为军,杀了黄文炳,并从此与江州的张顺等人随宋江上了梁山。

从故事剧情中我们得知李逵使用一把板斧劫了法场。



我们都知道板斧是由木头柄和铁制的斧构成。那么想要得到一把板斧需要这两样物品的组合。

我们于是定义一个木头类和铁类:
public class FaMuGong {//伐木工 public void FaMu(){//伐木
System.out.println("我是伐木工,我伐木。得到【木头】"); } } public class TieJiang {//铁匠 public
void LianTie(){//炼铁 System.out.println("我是铁匠,我炼铁。得到【铁】"); } }
接下来,有请“黑旋风”李逵,那么他的情节就是打抱不平!
public class LiKui {//李逵 public void DaBaoBuPing(String BanFu){
System.out.println("我是李逵,我打抱不平。得到【板斧】"); } }
 这个故事是在江州发生的,所以我们来描绘一个场景为众英雄好汉提供展示情节的舞台。
public class JiangZhou {//江州 public static void main(String[] args) {
//找伐木工,得到【木头】 FaMuGong faMuGong = new FaMuGong(); faMuGong.FaMu(); //找铁匠,得到【铁】
TieJiang tieJiang = new TieJiang(); tieJiang.LianTie(); //李逵开始劫法场,打抱不平!!! LiKui
liKui = new LiKui(); liKui.DaBaoBuPing(); } }
剧情开始!action!



那么问题来了,李逵有点不耐烦了。

李逵:“俺打抱不平,使一把板斧,我还要去伐木和炼铁啊!!!气煞我也”

那么我们应该怎么办呢?其实李逵好汉去武器店买一把不就问题解决了嘛!这样,我们来看看这个武器店是什么样的
public class WuQiDian {//武器店 private FaMuGong faMuGong;//伐木工 private TieJiang
tieJiang;//铁匠 public WuQiDian() { this.faMuGong = new FaMuGong();
faMuGong.FaMu();//从伐木工那里得到【木头】 this.tieJiang = new TieJiang();
tieJiang.LianTie();//从铁匠那里得到【铁】 } public String buy(){ String BanFu = "板斧";
System.out.println("本店出售【板斧】"); return BanFu; } }
重新定义一个江州场景
public class JiangZhou {//江州 public static void main(String[] args) { WuQiDian
wuQiDian = new WuQiDian(); LiKui liKui = new LiKui(); String BanFu =
wuQiDian.buy();//从武器店得到板斧 liKui.DaBaoBuPing(BanFu);//开始打抱不平 } }
剧情开始!action!



我们看到李逵直接从武器店得到了板斧,并不需要分别找到伐木工和铁匠,这样简化了得到板斧的流程,大大缩短了时间。

在生活也是如此的,我们购买的大部分物品都是加工或再加工好的,我们使用即可,完全不需要考虑它的构成和原理。

在一个大系统中,会有很多小的组件,这些组件之间有着复杂的逻辑关系,对于我们来说,直接使用这些小的组件会变得十分麻烦,所以通过“外观模式
”就相当于一个“武器店”,相当于一个接口对外界暴露,我们使用即可。

加个关注吧,下次接着看!谢谢!!!



https://blog.csdn.net/wfy2695766757 <https://blog.csdn.net/wfy2695766757>

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信