- 浏览: 80217 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
hanlingbo2008:
问题:
空中巴士(airbus)、波音(Boeing)、麦道 ...
桥梁(Bridge)模式 -
hanlingbo2008:
从Enueration到Iterator的适配
publ ...
适配器模式(Adapter) -
hanlingbo2008:
从Iterator到Enueration的适配
publ ...
适配器模式(Adapter)
安全合成模式代码:
public interface Component { Composite getComposite(); void sampleOperation(); }
public class Leaf implements Component { public Composite getComposite(){ // Write your code here return null; } public void sampleOperation(){ // Write your code here } }
public class Composite implements Component { public Composite getComposite(){ return this; } public void sampleOperation(){ java.util.Enumeration enumeration = components(); while (enumeration.hasMoreElements()) { ((Component)enumeration.nextElement()).sampleOperation(); } } public void add(Component component){ componentVector.addElement(component); } public void remove(Component component){ componentVector.removeElement(component); } public Enumeration components(){ return componentVector.elements(); } /** * @associates <{Component}> * @link aggregation * @supplierCardinality 0..* */ private Vector componentVector = new java.util.Vector(); }
透明合成模式代码:
import java.util.Enumeration; public interface Component { void sampleOperation(); Composite getComposite(); void add(Component component); void remove(Component component); Enumeration components(); }
import java.util.Enumeration; import java.util.Vector; public class Leaf implements Component { public void sampleOperation() { // Write your code here } public void add(Component component) { componentVector.addElement(component); } public void remove(Component component) { componentVector.removeElement(component); } public Composite getComposite() { // Write your code here return null; } public Enumeration components() { // Write your code here return null; } /** * @associates <{Component}> * @link aggregation * @supplierCardinality 0..* */ private Vector componentVector = new java.util.Vector(); }
import java.util.Vector; import java.util.Enumeration; public class Composite implements Component { public Composite getComposite() { return this; } public void sampleOperation() { java.util.Enumeration enumeration = components(); while (enumeration.hasMoreElements()) { ((Component)enumeration.nextElement()).sampleOperation(); } } public void add(Component component) { componentVector.addElement(component); } public void remove(Component component) { componentVector.removeElement(component); } public Enumeration components() { return componentVector.elements(); } /** * @associates <{Component}> * @link aggregation * @supplierCardinality 0..* */ private Vector componentVector = new java.util.Vector(); }
发表评论
-
java.io包学习1
2008-11-27 10:23 1185转自:http://www.blogjava.net/cher ... -
java.io包学习
2008-11-27 10:22 12861. java.io 包中定义了多个流类型来实现输入和输出功 ... -
15、装饰模式(Decorator)
2008-11-25 11:57 723装饰模式(Decorator)使用原来被装饰的类的一个子类的实 ... -
14. 合成模式(composite)
2008-11-25 11:27 1089合成模式(composite)把部分和整体的关系用树结构表示出 ... -
java八种基本类型
2008-11-24 11:55 5782Java语言提供了八种基本类型。六种数字类型(四个整数型,两个 ... -
命令模式(Command)例子2增加宏命令
2008-11-23 12:00 1214命令模式(Command)例子2增加宏命令 为julia的 ... -
命令(Command)模式例子2
2008-11-23 11:47 988命令(Command)模式例子2 -------- Audio ... -
java内的命令(Command)模式例子
2008-11-23 11:17 1551命令模式例子------创世纪系统 系统开始时,世界是个黑 ... -
命令(Command)模式
2008-11-23 10:59 95113、命令(Command)模式 命令模式( ... -
JDOM对xml文件的读写API
2008-11-18 11:05 1451根据jdom自带的例子总结 1. org.jdom.in ... -
JDOM对xml文件的读写
2008-11-18 10:19 20701. 读取例子 xml文件代码 <?xml ve ... -
java语言对观察者模式的支持
2008-11-17 17:32 82512.1 java语言对观察者模式的支持 ... -
Java Reflection API 简介
2008-11-16 12:40 1454在JDK中,主要由以下类来实现Java反射机制,这些类都位于j ... -
Java 语言的反射机制
2008-11-16 12:22 678在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属 ... -
模板方法模式中的方法
2008-11-15 22:50 74611.2 、模板方法模式中的方法 基本方法: 抽象方 ... -
模板方法模式的一个例子
2008-11-15 22:34 112311.1 模板方法例子 考虑一个银行存款例子 ... -
模板(Template Method)方法模式
2008-11-15 22:11 91411、模板(Template Method)方法模式 ... -
不变(Immutable)模式
2008-11-15 21:44 80810、不变(Immutable)模式 定义: ... -
桥梁(Bridge)模式
2008-11-15 13:01 10369、桥梁(Bridge)模式 桥梁模式的结构 ... -
门面模式(Facade)
2008-11-15 12:21 11208、门面模式(Facade) 门面角色(Facade): 供 ...
相关推荐
8.1.3 绑定模式 203 8.1.4 使用代码创建绑定 205 8.1.5 使用代码检索绑定 206 8.1.6 多绑定 207 8.1.7 绑定更新 210 8.1.8 绑定延迟 211 8.2 绑定到非元素对象 211 8.2.1 Source属性 212 8.2.2 RelativeSource属性 ...
8.1.3 绑定模式 203 8.1.4 使用代码创建绑定 205 8.1.5 使用代码检索绑定 206 8.1.6 多绑定 207 8.1.7 绑定更新 210 8.1.8 绑定延迟 211 8.2 绑定到非元素对象 211 8.2.1 Source属性 212 8.2.2 RelativeSource属性 ...
1.8.6 安全数据类型 22 1.8.7 移动构造 23 1.9 支持开发并行程序 26 1.9.1 运行库支持native代码 26 1.9.2 调试和分析工具 29 1.10 对MFC的增强 31 1.10.1 任务对话框CTaskDialog 31 1.10.2 重启管理器(Restart ...
实例206 弹出全屏显示的网页模式对话框 261 实例207 关闭IE主窗口时不弹出询问对话框 262 实例208 弹出提示对话框并重定向网页 263 实例209 自动关闭的广告窗口 264 实例210 在弹出的对话框中选择个性头像 265 实例...
实例206 弹出全屏显示的网页模式对话框 261 实例207 关闭IE主窗口时不弹出询问对话框 262 实例208 弹出提示对话框并重定向网页 263 实例209 自动关闭的广告窗口 264 实例210 在弹出的对话框中选择个性头像 265 实例...
实例177 检测系统启动模式 实例178 内存使用状态 实例179 监视剪贴板内容 实例180 利用钩子技术实现键盘监控 6.6 程序相关设置 实例181 用列表显示系统正在运行的程序 实例182 为程序添加快捷方式 实例183 ...
实例177 检测系统启动模式 实例178 内存使用状态 实例179 监视剪贴板内容 实例180 利用钩子技术实现键盘监控 6.6 程序相关设置 实例181 用列表显示系统正在运行的程序 实例182 为程序添加快捷方式 实例183 ...
cc实例177 检测系统启动模式 cc实例178 内存使用状态 cc实例179 监视剪贴板内容 cc实例180 利用钩子技术实现键盘监控 6.6 程序相关设置 cc实例181 用列表显示系统正在运行的程序 cc...
cc实例177 检测系统启动模式 cc实例178 内存使用状态 cc实例179 监视剪贴板内容 cc实例180 利用钩子技术实现键盘监控 6.6 程序相关设置 cc实例181 用列表显示系统正在运行的程序 cc...
6.4 系统相关设置 cc实例173 获得Windows和System的路径 cc实例174 控制光驱的弹开与关闭 cc实例175 启动控制面板 cc实例176 为程序添加快捷键 6.5 系统监控 cc实例177 检测系统启动模式 cc实例178 ...
14.1GUI程序设计的基本概念436 14.1.1组件437 14.1.2布局管理437 14.1.3事件处理437 14.2开发工具Eclipse简介438 14.2.1Eclipse的安装与配置438 14.2.2用Eclipse创建一个项目440 14.3AWT组件简介444 14.3.1...