OO总结

第一次和第二次作业没有认真完成,无法做出总结...

 

UML作图工具没有学会所以一一列举程序中的方法和方法间的耦合关系。

第三次作业是含有捎带功能的电梯调度系统

package: elevator_plus

在这次作用中,用到的方法有:

首层是电梯类:elev,对应的方法有利用interface方法写出的类moving和对应的子类elev,其中包含的对象有:

int类型: cfloor ffloor

String类型: command dir state s

double类型: time

来自请求类的对象 : Re

电梯类实现的功能包括:记录电梯的运动状态

           计算电梯的运行方向

其次,程序中描述了调度类,楼层,请求和程序格式检查等类

其中

调度类(diaodu)利用的方法:

_init_: 初始化电梯类对象Elevator,将时钟调整到初始状态

stat: 计算电梯的运行时间,判断捎带

其中对象实用了队列类(que_del)中的变量

que_del类中使用的对象包括:

来自request类型的对象: que

int类型: front rear

实现的方法有:
_init_方法: 将队列的首尾指针初始化

comb1方法: 查询请求队列中重复的请求

add_in_que方法: 将请求添加到队列中

via方法: 查询对应的请求

valid方法: 检查请求合法性

调度类中

stat方法实现了对相同请求的去除和输出

计算了电梯运行楼层所需要的时间

 

diaodu类中,利用的子类addi

实现的功能:判断捎带情况

使用的对象:Arraylist<>对象 req

int类型: flag i

 

floor类型:楼层内请求类

实现的功能:判断请求内楼层功能是否正确

利用的对象: 

int类型 curfloor

 

Request类型中(请求类)

实现的功能:生成可识别的请求格式

使用的实例对象: 

boolean 类型: if_valid

int类型: floor

long类型: time

String类型: command request

 

StyleCheckout类型中(格式检查类)
实现的功能: 利用正则表达式检查请求格式

使用的实例对象:

String类型: fir_mat, sec_mat,run

 

func类型(电梯的主要功能):

实现的功能: main方法:获取输入,去掉输入中的其他符号,转换为系统可识别的表达式,检查异常;判断请求的类型是来自楼层的还是来自电梯的请求

使用的实例对象:

String 类型:read, fin ,result,result1

int类型: i,j,i_r

long类型 time,floor

来自StyleCheckout类型的对象:ob

 

优点:在傻瓜电梯的功能基础上添加了捎带的功能,功能更完善

缺点:floor功能没有用处

 

bug分析:

在这次作业中,实现调度方法中,出现很多问题,我在测试基础上,添加了部分测试数据,根据代码的功能找出bug

测试策略:这三次作业过程中没有进行测试别人的代码,所以没有检测别人代码的经验

心得体会:

现在我对于这门语音的掌握还很不熟练,需要更多的练习丰富自己。

 

你可能感兴趣的:(OO总结)