资源描述:
《Java面向对象程序设计实验指导书》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《Java面向对象程序设计》课程实验指导书实验1基于Eclipse的Java项目开发一实验目的:实现基于EclipseIDE的Java项目。综合应用枚举、循环、判断流程、字符串操作等,学习继承和接口的使用,设计的程序符合Java程序设计原则。二实验内容:编写两个Java项目,第一个项目包含判定字符串特征的工具类,一个4个类级文件,包括1个接口,2个实现类(判断字符串是否是回文,判断字符串是否是重复串,即字符串中每个字符出现且仅出现两次),1个核心操作类(供客户端程序调用),4个类的设计需要符合开闭原则,
2、将该项目导出成为jar文件并在第二个项目中导入使用。第二个项目模拟一个教学过程,共计7个类级文件。大学人员1个抽象类,2个子类(老师和学生);2个枚举类,1个表示教学状态,包括选课、备课、听课、布置作业、做作业和完成,1个表示布置作业的类型,包括判断回文作业和判断重复串作业;1个消息类负责封装教学过程中的各种状态信息;1个教学类为主类,指定教师和上课的学生并实现一次授课;每完成一个过程会输出若干行提示信息,表示该过程的执行。三实验步骤:(以红色标出的六个方法为需要重点实现的关键方法)1、编写工具类项目:
3、1.1建立名为JavaLabTcachingUti1的Java项目,创建包cn.qtcch.teaching,ui111.2在cn.qtech.teaching,ui11中创建接口StringEstimator,表示对一个字符串进行某种判定(回文串?重复串?),包含有一个方法estimate,参数为String字符串,返回类型为boolean型。1.3在cn.qtech.teaching,uitl中创建类HuiwenEstimator实现接口StringEstimator,重写的方法estimate用以
4、判断一个字符串是否为回文。1.4在cn.qtech.teaching,uitl中创建类RepeatedStringEstimator实现接口StringEstimator,重写的方法estimate用以判断一个字符串是否为重复串。(如果上机时间有限,该类中的方法可暂时不实现,直接返回false即可,下课后实现该算法)1.5在cn.qtech.teaching,uitl中创建供客户端调用的核心类StringWork,包括一个方法StringEstimate,该方法有两个参数,被判定的字符串和StringE
5、stimator,方法体中使用接口回调对字符串进行判定并返回判断结果。1.6将该项目导出为jar包。2、编写模拟教学过程的项目2.1建立名为JavaLabTcaching的Java项目,创建包cn.qtcch.teaching2.2创建表示教学过程的枚举TeachingState,旬含选课、备课、听课、布置作业、做作业和完成(以XUANKE,BEIKE,TINGKE,BUZHIZUOYE,ZUOZUOYE,FINISH表示)2.3创建表示家庭作业类型的枚举HomeworkType,包含回文串和重复串(以
6、HU1WEN,REPEATEDSTRING表示)1.4创建封装教学过程中的各种状态信息类TeachingMessage,包含的成员变量有:课程名称lessonName(String类型),第几次上课time(int),授课教师teacher(Teacher),上课学生students(student[]),授课状态state(TeachingState),家庭作业类型homeworkType(HomeworkType),家庭作业字符串homeworkstring(String),家庭作业结果homcwo
7、rkRcsull(boolean),所有成员变量都是private,创建public的getter/setter函数。1.5创建表示大学人员的名为UniversityPeople的抽象类,该抽象类有一个方法doDuty,无返回类型,参数为表示教学信息的TeachingMessage类。2.6创建教师类Teacher,继承自UniversityPeople,有一个字符型成员变量name及其getter/setter方法,重写父类的doDuty方法,该方法中使用switch开关语句对信息类TeachingM
8、essage类参数中的授课状态state进行匹配,分别执行如下操作:I斜体下划线表示变量值选课状态下⑴将信息类中的上课次数加1(2)输出:学生选完譚瘗名欷后,开始备第几次上诜堂课!⑶更改消息类中的授课状态为备课。听课状态下(1)输出:听课学生名单:(2)输出每个学生的姓名(3)输出(4)输出:学生听完谀裡名款课后,开始布置作业!(5)设置家庭作业类型为回文型(6)设置家庭作业字符串为〃rxotor〃(7)设置授课状态为布置作业做作业状态下