山东建筑大学《面向对象程序设计》课程设计指导书山东建筑大学计算机科学与技术学院2015年3月目录1课程设计目的................................................................................................................................33课程设计选题................................................................................................................................54课程设计题目...............................................................................................................................64.1复数类.......................................................64.2字符串类.....................................................64.3日期类.......................................................74.4学生成绩管理系统.............................................74.5项目管理系统.................................................84.6客户管理系统.................................................84.7用户管理系统.................................................84.8商品管理系统.................................................94.9班级通讯录..................................................104.10图书管理系统...............................................104.11课外兴趣小组管理...........................................114.12人事管理系统...............................................114.13选课管理系统...............................................124.14毕业生选题管理系统.........................................124.15教师评学管理系统...........................................134.16学生评教管理系统...........................................135课程设计说明书撰写规范.........................................................................................................15附件1课程设计说明书模板........................................................................................................1631课程设计目的课程设计的主要目的:通过面向对象程序设计课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,要求学生能够对现实生活中许多具体的事物抽象出来,并掌握继承与派生,基类、虚函数和多态性的概念。通过这次课程设计掌握面向对象的编程思想,为后续课程打下基础。培养学生实际操作能力和团结协作能力,为以后的工作打下坚实的基础。课程设计的内容:通过对面向对象基本理论和基本知识的理解,运用面向对象程序设计方法设计和编写程序,注重面向对象程序设计理论知识的理解与实际的动手编程能力相结合。运用Java语言作为程序编写语言,充分运用继承和多态性等面向对象技术,恰当运用文件和用户图形界面等技术,理解面向对象程序设计的核心的概念和技术。课程设计进度表:课程设计时间为一周,大致划分如下:第一天查找资料,总体需求分析,建立程序总体结构和类结构;第二天类中属性及方法的编程设计;第三天各模块的调试与修改,程序总调试及修改,程序测试;第四天~第五天撰写课程设计说明书,课程设计检查与演示42课程设计步骤设计步骤包括:根据问题描述确定需求,找出解决的办法和思路,用自顶向下的方法创建主程序和子程序,确定控制对象间的相互作用。根据需求,建立程序功能,设计相应的类结构。确定所有类的描述和定义,确定输入和输出,设计程序算法。编译并调试运行程序,检验程序的可运行性,设计测试用例程序进行测试。编写面向对象程序设计课程设计说明书。课程设计说明书内容:封面课程设计任务书目录正文参考文献课程设计演示:完成课程设计后,组织学生进行程序演示,讲解设计思路和编程方法。不得从网上下载或者抄袭别人的资料,一经发现,课程设计不及格。参考书目:[1]刘宝林《Java程序设计与案例》北京:高等教育出版社[2]耿祥义《java大学实用教程》北京:电子工业出版社[3]马俊,范玫《Java语言面向对象程序设计》北京:机械工业出版社53课程设计选题选题分为预选阶段和题目确认阶段,同一个班中的学生所选题目不能完全相同。题目预选,每位同学从下面16个题目中选择2个题目,2个题目的选择遵循下面的原则:第一个题目从1-9号题目中选,第二个题目从10-16号题目中选。题目确认,由指导教师检查确认学生预选题目是否符合课程设计选题要求,对存在问题的选题进行重选。选好题目后,每位同学根据题目的内容填写任务书(请见附件1课程设计说明书模板),其中“已知技术参数和设计要求”项,根据设计题目中“要求”部分进行填写,“设计内容与步骤”根据设计题目中“提示”部分进行填写,注意:一个题目对应一份任务书。请认真阅读课程设计指导书,提前做好课程设计准备。64课程设计题目4.1复数类要求:1)该系统主要处理复数的相关信息。2)完成以下的操作:初始化复数、求其绝对值、复数的加、减、乘、除、乘方、自加、自减等。提示:1)建立数据类、复数类2)数据、复数信息的初始化3)复数信息的输出4)求复数的绝对值5)实现复数的加、减、乘、除、乘方、自加、自减等运算4.2字符串类要求:1)该系统主要处理字符串的相关信息。2)完成以下的操作:初始化字符串、获得字符串长度、在字符串中查找一个字符、在字符串中查找另一个字符串、字符串连接、字符串比较等。提示:1)建立字符串类2)字符串信息的初始化3)字符串信息的输出4)获得字符串长度5)在字符串中查找一个字符6)在字符串中查找另外一个字符串7)比较字符串74.3日期类要求:1)该系统主要处理时间的相关信息。2)完成以下的操作:日期的设置、显示、实现在某一个日期上(月、日、年)加减一个天数的功能、计算两个日期间隔天数提示:1)建立日期类2)日期类的初始化3)按某个固定格式(如:yyyy-MM-dd)一次性的设置某个日期对象4)以固定格式显示某个日期5)在日期上加一天6)在日期上减一天7)输入两个日期,然后输出日期的间隔天数4.4学生成绩管理系统要求:1)该系统主要处理学生的成绩信息。2)学生信息主要包括:学号、班级、姓名、科目1、科目2、科目3等内容。3)完成以下的操作:实现成绩信息的添加、修改、删除和查询,可以计算每个学生的平均成绩及各科目的平均成绩,将学生信息保存为文件。提示:1)建立学生类2)学生信息的初始化3)学生信息的添加、修改、删除、查找4)学生信息的输出5)对学生信息按学号、成绩排序6)计算一门课的平均分和总分84.5项目管理系统要求:1)该系统主要处理项目的相关信息。2)项目信息主要包括:项目编号、项目名称、等级、负责人等内容。3)完成以下的操作:项目信息的录入、修改、删除和查询提示:1)建立项目类2)项目信息的初始化3)项目信息的添加、修改、删除、查找4)项目信息的输出5)在项目信息中按项目编号、项目名称、项目等级排序4.6客户管理系统要求:1)该系统主要处理客户的相关信息。2)客户信息主要包括:客户编号、客户名称、所在地区、联系方式等内容。3)地区信息主要包括:编号、名称等内容。4)完成以下的操作:客户信息、地区信息的录入、修改、删除和查询。提示:1)建立客户类、地区类2)客户、地区信息的初始化3)客户、地区信息的添加、修改、删除、查找4)客户、地区信息的输出5)将客户信息保存为文件4.7用户管理系统要求:91)该系统主要处理用户的相关信息。2)用户信息主要包括:编号、用户名、用户类型、联系方式等内容。3)用户类型信息主要包括:编号、类型名称、权限等级等内容4)完成以下的操作:用户信息、用户类型信息的录入、修改、删除和查询。提示:1)建立用户类、用户类型类2)用户、用户类型信息的初始化3)用户、用户类型信息的添加、修改、删除、查找4)用户、用户类型信息的输出5)对用户信息按权限排序6)将用户信息保存为文件4.8商品管理系统要求:1)该系统主要处理商场中的商品信息。2)商品信息主要包括:商品编号、商品类型、商品类型、价格、供应商等内容。3)供应商信息主要包括:供应商编号、供应商名称、联系电话等内容。4)完成以下的操作:实现商品信息、商品类型、供应商信息的添加、修改、删除和查询。提示:1)建立商品类、商品类型类、供应商类2)商品、商品类型、供应商信息的初始化3)商品信息的添加、修改、删除、查找4)供应商信息的添加、修改、删除、查找5)商品信息、供应商信息的输出104.9班级通讯录要求:1)该系统主要处理通讯录的相关信息。2)通讯录信息主要包括:姓名、班级、手机、家庭电话、电子邮件、通讯录地址、邮编等内容。3)完成以下的操作:实现通讯录信息的添加、修改、删除和查询。提示:1)建立班级类、通讯录类2)班级、通讯录信息的初始化3)班级、通讯录信息的添加、修改、删除、查找4)班级、通讯录信息的输出5)将通讯录信息保存为文件4.10图书管理系统要求:1)该系统主要处理图书馆中的图书信息以及供应商向图书馆供应图书的信息。2)图书信息主要包括:图书编号、图书名称、图书类型、作者、出版社、库存等内容。3)供应商信息主要包括:供应商编号、供应商名称、供书类型、地址、电话等内容4)其中,图书类型和供书类型是都是书籍类型(如:信息类、建筑类、化学类、生物类等)5)完成以下的操作:实现图书信息的添加、修改、删除和查询;图书供应商信息的添加、修改、删除和查询;书籍类型的添加、修改、删除和查询;供应商向图书馆供应图书的情况查询、统计。提示:111)建立书籍类型类、图书类、供应商类2)书籍类型、图书信息、供应商的初始化3)书籍类型、图书信息、供应商的添加、修改、删除、查找4)对图书信息按编号、书名排序5)将图书信息和供应商信息保存为文件4.11课外兴趣小组管理要求:1)该系统主要处理课外兴趣小组的相关信息。2)学生信息主要包括:学号、姓名、性别、兴趣爱好等内容。3)兴趣主要包括:兴趣编号、兴趣类型等内容。4)完成以下的操作:实现学生兴趣信息的添加、修改、删除和查询。提示:1)建立学生类、兴趣类、兴趣类型类2)学生、兴趣、兴趣类型信息的初始化3)学生、兴趣、兴趣类型信息的添加、修改、删除、查找4)学生兴趣信息的输出5)将