欢迎来到天天文库
浏览记录
ID:37920548
大小:300.05 KB
页数:10页
时间:2019-06-02
《C#面向对象程序设计训练》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、福建工程学院信息科学与工程学院实验报告2013–2014学年第一学期任课老师:王晨阳课程名称C#程序设计班级信管1102座号20姓名郭明光实验题目C#面向对象程序设计训练实验时间2013/10/24实验目的、内容3.设计题阅读下面说明和代码,在(n)处填充代码。(1)【说明】单件模式(Singleton)在某种程度上来说是限制而不是促进类的创建。单件模式确保类有且仅有一个实例,并提供了一个对该实例的全局访问点。在实际程序中,有很多类是需要确保有且仅有一个实例的。【代码】usingSystem;classSingletonDemo{privatestati
2、cSingletonDemotheSingleton=null;private(1)SingletonDemo(){}public(2)staticSingletonDemoInstance()//静态全局{if(null==theSingleton){theSingleton=(3)newSingletonDemo();}returntheSingleton;}staticvoidMain(string[]args){SingletonDemos1=SingletonDemo.Instance();SingletonDemos2=SingletonDe
3、mo.Instance();if(s1.Equals(s2)){Console.WriteLine("See,OnlyOneInstance!");}}}【程序输出结果】(2)【说明】某高校的部门组织结构如图3-1所示,现采用组合(Composition)设计模式来设计,得到如图3-2所示的类图。其中Department为抽象类,定义了在组织结构图上添加(add)、删除(delete)部门和获取子部门列表的方法接口以及部门名称字段和封装部门名称字段的属性。类ConcreteDepartment表示具体的系部,各系部下还可以设置不同的子部门或教研室。类HR
4、Department和类FinanceDepartment分别表示人事处和财务处。简述组合(Composition)设计模式的特征?图3-1组织结构图图3-2类图【代码】usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceComposition{public(1)abstractclassDepartment{protectedstringname;publicstringName{(2)get{returnthis.name;}}publicabstractvoid
5、add(Departmentd);publicabstractvoiddelete(Departmentd);publicabstractListgetChildren();}publicclassConcreteDepartment:Department{privateListchildren=newList();publicConcreteDepartment(stringname){this.name=name;}publicoverridevoidadd(Department
6、d){(3)children.add(d);}publicoverridevoiddelete(Departmentd){children.Remove(d);}publicoverrideListgetChildren(){returnthis.children;}}publicclassHRDepartment:Department{publicHRDepartment(stringname){this.name=name;}publicoverridevoidadd(Departmentd){}publicoverridev
7、oiddelete(Departmentd){}publicoverrideListgetChildren(){returnnull;}}publicclassFinanceDepartment:Department{publicFinanceDepartment(stringname){this.name=name;}publicoverridevoidadd(Departmentd){}publicoverridevoiddelete(Departmentd){}publicoverrideListge
8、tChildren(){returnnull;}}classProgram{st
此文档下载收益归作者所有