java_语句姓名_密码_JAVA程序设计项目报告书.doc

信息工程学院

实训报告书

题目: JAVASE程序设计实训

组别: 2

成员:

专业: 软件技术101

导师:

连云港职业技术学院信息工程学院

二○一一 年 六 月目 录

项目一ATM柜员机模拟程序3

项目二 图形计算接口设计7

项目三 秒表模拟与实现10

项目四 个人通讯录管理程序设计12

参考文献18

项目一ATM柜员机模拟程序

JAVA程序设计项目报告书

学号:100512109        姓名:张敏            实验日期:2011年6月18日

项目编号

Java_01

项目名称

ATM柜员机模拟程序

班级

软件101

学时

4

课程名称

JavaSE程序设计

参考书

《JAVA轻松入门》

目的

1、 掌握JAVA类的创建与使用 2、掌握访问控制符的使用方法

3、应用与掌握结构化流程控制的方法 4、掌握字符的输入与显示方法

一、 项目内容:

当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以进行:

1 查询余额:初始余额为10000元

2 ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。

3 ATM存款:不能出现负存款。

4 修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

二、 运行结果截图:

三、 核心代码:

四、 主要问题分析:

修改密码存在很大的问题,有待解决,

取款不完善,不能判断负款。

使用switch语句可以选择菜单栏。

1、 总结:通过此次学习,对JAVA更近一步了解,调用方法的使用,对输入语句进一步熟悉,修改密码无论符不符合要求都显示失败,switch 语句比较重要。使用方便简易。

项目二 图形计算接口设计

JAVA程序设计项目报告书

学号:100512109        姓名:张敏            实验日期:2011年6月19日

项目编号

Java_02

项目名称

图形计算接口设计

班级

软件101

学时

4

课程名称

JavaSE程序设计

参考书

《JAVA轻松入门》

目的

1、 理解接口的作用及其对JAVA间接多重继承的贡献

2、 掌握接口的设计与使用

一、 项目内容:

1.使用interface关键字定义Shape接口,接口中包含一个求解面积的方法定义;

2.使用extends从接口Shape派生出接口Shape2D和Shape3D接口,并为接口Shape2D添加一个求解周长的方法定义;为接口Shape3D添加一个求解体积的方法定义;

3.编写一个Circle类,该类实现Shape2D接口;

4.编写一个Square类,该类实现Shape3D接口;

5.定义一个Scaleable接口,该接口中定义一个scale(double proportion)方法;

6.编写一个可缩放的圆形CircleScaleable类,该类继承于Circle类同时实现Scaleable接口;

7.编写一个CircleScaleable类的测试程序。

二、运行结果截图:

三、核心代码:

接口中无方法体例如:

继承与实现例如:

设置比例:

测试调用方法:

主要问题分析:

1.接口使用需注意的问题:接口的继承和实现。

2.继承使用关键字extends 实现使用关键字 implements

3.接口中无方法体。

4.类的使用:开头字母需大写,类的继承。子类继承父类,并有自己的属性。

5. 比例缩放,不太懂,圆形缩放类不完善。

项目三 秒表模拟与实现

JAVA程序设计项目报告书

学号:100512109        姓名: 张敏           实验日期:2011年6月20日

项目编号

Java_03

项目名称

秒表模拟与实现

班级

软件101

学时

4

课程名称

JavaSE程序设计

参考书

《JAVA轻松入门》

目的

1、 理解多线程的工作原理及作用

2、 掌握多线程程序的设计方法

3、 掌握GUI程序设计方法

一、 项目内容:

该窗口(JFrame)采用BorderLayout布局方式,包括一个用于显示时间信息、放在中心(Center)的标签(JLabel)以及一个用于控制秒表启动与停止、放在下方(South)的命令按钮(JButton)。程序开始运行时秒表停止,按钮文字为“开始”,如果用鼠标单击“开始”按钮,秒表开始计时,计时信息每10毫秒变化一次,同时“开始”按钮文本变为“停止”;如果再次单击“停止”按钮,秒表停止计时,“停止”按钮文本变为“开始”。

二、 运行结果截图:

三、 核心代码:

线程控制:

监听设置:

时间设置:

四、 主要问题分析:

1.按钮要注册监听,

2.通过实现Runnable接口来创建线程,

3.时间的分秒控制出现问题,此处借鉴别人的

4.描述语句,窗体设置有待完善,

5.窗体的初始化应抽出为单独方法-initGul 方法中。

五、 总结:窗体使用需进一步强化,窗体设置,窗体初始化。按钮的使用,按钮的注册。

项目四 个人通讯录管理程序设计

JAVA程序设计项目报告书

学号: 100512109       姓名:张敏            实验日期:2011年6月21日

项目编号

Java_04

项目名称

个人通讯录管理程序

班级

软件101

学时

10

课程名称

JavaSE程序设计

参考书

《JAVA轻松入门》

目的

1、 掌握文件的读写原理

2、 掌握从文本文件中查询数据的方法

3、 掌握从文本文件中删除行数据的方法

4、 掌握为文本文件添加数据的方法

一、 项目内容:

主要提供如下功能:

1 增加记录 4 查询记录

2 删除记录 5 文件备份

3 显示所有记录 6 退出

通讯录记录信息包括:姓名,电话,email等,通讯录文件所在目录D:\myfolder,文件名mytxl.txt.

1 在main()方法中实现上述功能菜单。

2.编写增加记录方法

3.编写显示所有记录方法

4.编写查询记录方法。查询时以姓名为关键字,需从键盘输入姓名,若存在显示该记录,否则给出查无此人的信息。

5.编写删除记录方法。删除记录时,需要从键盘输入要删除的人的姓名,先进行查询,若存在,则删除,若不存在,给出查无此人的信息。

6. 编写备份文件的方法。为文件mytxl.txt做一个备份,备份文件名为matxl.bak. (进行文件拷贝)

7.实现退出功能

二、 运行结果截图:

三、 核心代码:

文件写入:

String fileName = "D:\\myfolder\\mytxl.txt\\";

StringBuffer sb = new StringBuffer();

public static void readFile(String fileName){

try{

FileReader fr = new FileReader(fileName);

BufferedReader br = new BufferedReader(fr);

String line = br.readLine();

while(line != null){

System.out.println(line);

line = br.readLine();

}

增加信息:

public static void addStudent(String sid,String name,String cid,String email,String phone,String fileName){

try{

RandomAccessFile rf=new RandomAccessFile(fileName,"rw");

String line = rf.readLine();

boolean flag = false;

while(line != null){

if(line.contains(sid)){

System.out.println("ID repeated");

flag = true;

}

删除信息:

public static void deleteStudent(String sid,String fileName){

try{

RandomAccessFile rf=new RandomAccessFile(fileName,"rw");

String line = rf.readLine();

StringBuffer sb = new StringBuffer();

boolean flag = false;

四、 主要问题分析:

文件写入多次出现错误,要注意路径,输入流和输出流。FileReader 和BufferedReader

文件的添加和删除,需注意出现的异常。

文件的查询和备份存在问题,有待解决。

参考文献

展开阅读全文

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值