设为首页 加入收藏

TOP

Java 装饰器模式详解
2017-06-26 10:23:23 】 浏览:346
Tags:Java 装饰 模式 详解

在前几篇文章中,着重介绍了Java 中常见的 IO 相关知识,在学习的过程中,发现 IO 包中是用了大量的装饰器模式,为了彻底的学习 IO,今天就来揭开装饰器模式的面纱。


为了弄明白装饰器模式的本质,我查看了很多资料,发现有很多文章要么说的很苦涩,要么举的例子不恰当。


其实我们可以这样理解装饰器模式, 就拿自己举例子,你把自己裸体的样子,想象成被装饰的对象。你的鞋子,你的寸衣,你的外套,你的手表,你的帽子 等等,都是你的装饰物,你和这些装饰物,是装饰和被装饰的关系。


好了,现在我们用代码的方法去理解这样概念。


首先,我们发现,不管是裸体的人,还是你的鞋子、帽子,都有展示的功能,我们称之为show 方法。


我们定义一个接口,它具有展示的功能,也就是show() , 


现在应该定义一个裸体的自己了,Me 类


下面该定义,鞋子,帽子,手表等 装饰物,等等先别急,我们应该先定义一个鞋子,帽子,手表的抽象父类 AbstractClothes 。 其实抽象的父类有一个构造函数,构造函数里面的参数是抽象的人类,这里的用法很巧妙,这也是能够实现装饰功能的一个必不可少的步骤。


 下面开始定义,帽子装饰物  Hat 类, 继承 AbstractClothes 类


定义鞋子装饰类 Shoes ,   继承 AbstractClothes 类


创建测试类 Test


 运行结果:


在学习完了一个小例子之后,我们试着总结出装饰器模式的类图。


装饰器模式类图:


Java 装饰器模式详解 


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Linux编程之有限状态机FSM的理解.. 下一篇C++ STL快速入门

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目