java通信录 报告.docx
《java通信录 报告.docx》由会员分享,可在线阅读,更多相关《java通信录 报告.docx(9页珍藏版)》请在冰豆网上搜索。
java通信录报告
课程设计报告
课程名称:
java
设计题目:
通讯录查询系统
系别:
计算机与电子信息学院
专业:
计算机网络信息安全大类
学生姓名:
郭鹏学号:
1107300311
起止日期:
班级:
创新实验111
1.1课程设计目的
加深对java基础理论和基本知识的理解掌握使用java进行软件设计的基本方法,提高解决实际问题的能力,最终实现对于给定的应用要求,设计出满足要求的程序,使之满足各种用户的应用需求(信息要求和处理要求)。
同时,此次设计对于同学将来的毕业设计和具体工作实践将有重要的意。
1.2开发环境
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
2.1模块划分
1.查询功能:
实现用户对通讯录的查询:
2.修改功能:
选定联系人,对联系人的相关信息进行修改;
3.显示功能:
全部显示;
4.添加功能:
添加新的联系人。
5.删除功能:
选定联系人进行删除;
6.关闭功能:
关闭程序。
3应用系统功能设计
3.1数据流程图
3.1.1功能列表:
3.2模块的设计
3.2.1添加模块的设计
该段功能具体实现过程如下:
publicvoidAdd(){
if(i>=40){
System.out.println("空间已存满,增加记录失败");
return;
}
Scanners=newScanner(System.in);
System.out.println("请输入姓名,性别,电话,E-mail:
");
friend[i++]=newFriends(s.nextLine(),s.nextLine(),s.nextLine(),s.nextLine());
}
3.2.2删除模块的设计
该功能的实现代码如下:
publicvoidDelete(){
intj;
Scanners=newScanner(System.in);
Stringname=s.nextLine();
for(j=0;j
if(friend[j].getName().equals(name)){
break;
}
}
if(j>=i){
System.out.println("该姓名不存在");
return;
}
for(;jfriend[j]=friend[j+1];
}
i--;
}
}
}
3.2.3显示模块的设计
该功能的实现代码如下:
publicvoidDisplay(){
if(i==0){
System.out.println("通讯录为空");
return;
}
for(intj=0;j
System.out.println(friend[j].toString());
}
}
3.2.4查询模块的设计
该功能的实现代码如下:
publicvoidSearch(){
intj;
Scanners=newScanner(System.in);
Stringname=s.nextLine();
for(j=0;j
if(friend[j].getName().equals(name)){
break;
}
}
if(j>=i){
System.out.println("该姓名:
"+name+"不存在");
return;
}
System.out.println(friend[j].toString());
}
3.2.5文件备份模块的设计
该功能的实现代码如下:
publicvoidWriteFile(StringFileName){
try{
BufferedWriterout=newBufferedWriter(newFileWriter(FileName));
for(intj=0;j
out.write(friend[j].toString());
out.newLine();
}
out.close();
}
catch(Exceptione){
System.out.println(e+"备份失败");
}
}
4、设计体会及今后的改进意见
这次面向对象程序设计的课程设计是学习完面向对象程序设计这门课程之后进行的一次全面性的综合练习。
这次练习深化了我对面向对象程序设计这门课程的理解,使我更加熟练的掌握了使用Java语言进行软件设计的方法,提高了我运用Java语言解决实际问题的能力。
在设计程序过程中,每一步都需要认真考虑,仔细斟酌。
本次课程设计使我认识到很多学习中的诸多不足,尤其是对基础知识掌握的不够透彻,运用不够灵活,而且也认识到理论应紧密联系实际。
在本次课程设计和过程中,由于时间不是很长,再加上要求独立完成,程序中还存在很多缺陷,希望老师能给予批评和指导。
经过这次课程设计,我的知识得到了很大提升,经验也更加丰富。
希望能在今后的不断地学习中努力把程序做得更好。
在未来的学习生活中,我会把面向对象程序设计运用到自己的学习和生活中,充分运用面向对象程序设计来帮助和解决问题。
最后感谢指导老师给予我的帮助。
5、程序源代码
importjava.io.*;
importjava.util.*;
classFriends{
privateStringname;
privateStringsex;
privateStringphone;
privateStringemail;
publicFriends(){
}
publicFriends(Stringname,Stringsex,Stringphone,Stringemail){
this.name=name;
this.sex=sex;
this.phone=phone;
this.email=email;
}
publicStringgetName(){
returnname;
}
publicStringgetSex(){
returnsex;
}
publicStringgetPhone(){
returnphone;
}
publicStringgetEmail(){
returnemail;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicvoidsetSex(Stringsex){
this.sex=sex;
}
publicvoidsetPhone(Stringphone){
this.phone=phone;
}
publicvoidsetEmail(Stringemail){
this.email=email;
}
publicStringtoString(){
return"姓名:
"+this.name+"性别:
"+this.sex+"电话:
"+this.phone+"E-mail:
"+this.email;
}
}
classT{
Friendsfriend[]=newFriends[40];
inti=0;
publicvoidAdd(){
if(i>=40){
System.out.println("空间已存满,增加记录失败");
return;
}
Scanners=newScanner(System.in);
System.out.println("请输入姓名,性别,电话,E-mail:
");
friend[i++]=newFriends(s.nextLine(),s.nextLine(),s.nextLine(),s.nextLine());
}
publicvoidDelete(){
intj;
Scanners=newScanner(System.in);
Stringname=s.nextLine();
for(j=0;j
if(friend[j].getName().equals(name)){
break;
}
}
if(j>=i){
System.out.println("该姓名不存在");
return;
}
for(;jfriend[j]=friend[j+1];
}
i--;
}
publicvoidSearch(){
intj;
Scanners=newScanner(System.in);
Stringname=s.nextLine();
for(j=0;j
if(friend[j].getName().equals(name)){
break;
}
}
if(j>=i){
System.out.println("该姓名:
"+name+"不存在");
return;
}
System.out.println(friend[j].toString());
}
publicvoidDisplay(){
if(i==0){
System.out.println("通讯录为空");
return;
}
for(intj=0;j
System.out.println(friend[j].toString());
}
}
publicvoidWriteFile(StringFileName){
try{
BufferedWriterout=newBufferedWriter(newFileWriter(FileName));
for(intj=0;j
out.write(friend[j].toString());
out.newLine();
}
out.close();
}
catch(Exceptione){
System.out.println(e+"备份失败");
}
}
publicstaticvoidmain(Stringargs[]){
booleanflag=true;
Scannersc=newScanner(System.in);
Tt=newT();
while(flag){
System.out.println("请选择1.增加记录,2.删除记录,3.显示所有记录,4.查询记录,5.文件备份,6.退出");
inti=sc.nextInt();
switch(i){
case1:
t.Add();break;
case2:
System.out.println("请输入要删除的姓名:
");t.Delete();break;
case3:
t.Display();break;
case4:
System.out.println("请输入要查询的姓名:
");t.Search();break;
case5:
t.WriteFile("D:
\\mytx1.txt");break;
case6:
flag=false;break;
default:
break;
}
}
}
}