面向对象技术实验二报告

面向对象技术实验二报告

ID:22868466

大小:378.83 KB

页数:11页

时间:2018-11-01

面向对象技术实验二报告_第1页
面向对象技术实验二报告_第2页
面向对象技术实验二报告_第3页
面向对象技术实验二报告_第4页
面向对象技术实验二报告_第5页
资源描述:

《面向对象技术实验二报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、面向对象技术实验报告实验二排序[姓名]面向对象技术实验二报告1.实验内容:设计一个负责排序的程序包,实现多种排序算法,至少包括插入排序、胃泡排序和快速排序算法要求:1.可以对任何简单类型和任意对象进行排序2.可以支持升序、降序、字典排序等多种顺序要求3.可以随意增加排序算法和顺序要求,保证K他程序不修改4.减少程序代码中逻辑上的冗余5.至少用两种方案编程实现该程序包,并说明两个方案的优缺点6.提交设计报告,包拈:使WUML设计的类图;主要程序代码说明;方案优缺点比较。在实现该程序时运用了类的继承、接U的实现以及组合的方案2.程序的总体设计:详见后而所附UML类阁1.关键代码说明:(1)C

2、ompator接口(usetocompare)主要利用java的com.compator炎,创建一个MyCompator接门publicinterfaceMyCompator{intcompare(Objectol,Objecto2);},然后实现这个接u,用于比较任何简单类型和任意对象,分别实现ByteCompator、CharCompator、DoubleCompator、FloatCompator、IntCompator、LongCompator、ShortCompator、StringCompator以StringCompator为例,K•他实现炎与此炎似publicclassS

3、tringCompatorimplementsMyCompator{@Overridepublicintcompare(Objectol,Objecto2){Stringstrl=(String)ol;Stringstr2=(String)o2;returnstrl.compareTo(str2);}}(2)第一种实现:创建Sorter类作为父类①在sorter类屮实现各类方法用于各种数据类型以及任何对象的排序,以sortIntArray为例finalvoidsortIntArray(int[]array,booleanisAscend){Integer[]integers=newInt

4、eger[array.length];for(inti=O;i

5、j];}②创建抽象类*@paramisAscend是否升序排序*/protectedabstractvoidsort(booleanisAscend,Object[]array);*按升序排序finalvoidsort(Obj

6、ect[]array){sortjtrue^rray);}③排序算法:packagecom.inheritancesort;importcom.compator.MyCompator;publicclassBubbleSorterextendsSorter{publicBubbleSorter(MyCompatora){super(a);}publicBubbleSorter(){super();}@Overridepublicvoidsort(booleanisAscendrObject[]array){if(isAscend){for(inti=0;i

7、++){for(intj=0;j0)swap(array,j,j+l);}}}else{for(inti=0;i

8、];array[j]=array[i];array[i]=temp;}packagecomJnheritancesort;importcom.compator.MyCompator;publicclassInsertSorterextendsSorter{publicInsertSorter(MyCompatorc){super(c);}publicInsertSorter(){super();}◎Overridepublicvoi

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

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

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