设计模式上级实验5-组合模式实验.doc

设计模式上级实验5-组合模式实验.doc

ID:58568376

大小:106.50 KB

页数:3页

时间:2020-10-19

设计模式上级实验5-组合模式实验.doc_第1页
设计模式上级实验5-组合模式实验.doc_第2页
设计模式上级实验5-组合模式实验.doc_第3页
资源描述:

《设计模式上级实验5-组合模式实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、青岛理工大学课程实验报告课程名称软件设计与体系结构班级软件132实验日期2016.05.20姓名孙玉东学号实验成绩实验名称组合模式实验实验目的及要求(1)熟悉组合模式的核心思想;(2)掌握组合模式的实现方法。实验环境Win7,VS2010实验内容1.模拟实现Android的视图树结构将对象View和ViewGroup组合成树形结构以表示"部分-整体"的层次结构;组合模式使得用户对单个对象View和组合对象ViewGroup的使用具有一致性。2.参考类图如下:算法描述及实验步骤1.创建View类,定义公共方法2.创建Button类继承view类并实现方法3.创建ViewGroup类继承vi

2、ew类,实现方法。且列中保存View集合4.创建Liner'Layout类继承ViewGroup5.创建测试类调试过程及实验结果总结1.加深了对组合模式的理解。了解了组合模式的使用场景。组合模式适用于树形结构。2.安全的组合模式,抽象类只包含共有的方法。ViewGroup特有的方法需要自己实现。这样避免了子类实现过多不必要的方法。增加了安全性。附录1.View类publicabstractclassView{publicabstractvoidoperation();publicabstractvoidonDraw();}2.button类publicclassButtonextends

3、View{@Overridepublicvoidoperation(){System.out.println("-----Button-->operation");}@OverridepublicvoidonDraw(){//TODOAuto-generatedmethodstubSystem.out.println("-----Button-->onDraw");}}3.textview类publicclassTextViewextendsView{@Overridepublicvoidoperation(){System.out.println("-----TextView-->op

4、eration");}@OverridepublicvoidonDraw(){System.out.println("-----TextView-->onDraw");}}4.ViewGroup类publicclassViewGroupextendsView{publicArrayListviewList=newArrayList();publicvoidoperation(){System.out.println("ViewGroup-->operation");}publicvoidaddView(Viewview){viewList.add(view);}p

5、ublicvoidremove(Viewview){viewList.remove(view);}publicViewgetChildAt(intposition){returnviewList.get(position);}publicvoidonDraw(){System.out.println("ViewGroup-->onDraw");}}4.LinerLayout类publicclassLinerLayoutextendsViewGroup{publicvoidoperation(){System.out.println("*****LinerLayout-->operatio

6、n");for(Viewview:viewList){view.operation();}}publicvoidonDraw(){System.out.println("*****LinerLayout-->onDraw");for(Viewview:viewList){view.onDraw();}}}5.FrameLayout类publicclassFrameLayoutextendsViewGroup{publicvoidoperation(){System.out.println("*****FrameLayout-->operation");for(Viewview:viewL

7、ist){view.operation();}}publicvoidonDraw(){System.out.println("*****FrameLayout-->onDraw");for(Viewview:viewList){view.onDraw();}}}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。