20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20145308刘昊阳 《Java程序设计》实验一报告
实验名称
Java开发环境的熟悉
实验内容
- 使用JDK编译、运行简单的Java程序
2.使用Eclipse 编辑、编译、运行、调试Java程序
统计的PSP(Personal Software Process)时间
| 步骤 | 耗时(min) | 百分比 |
|---|---|---|
| 需求分析 | 5~10 | 7% |
| 设计 | 10~20 | 15% |
| 代码实现 | 40~50 | 36% |
| 测试 | 20~30 | 21% |
| 分析总结 | 20~30 | 21% |
实验步骤
- 编写代码
- 首先思考程序要实现什么功能,我设计程序实现对输入的学生成绩评级和打印输入的学生信息
- 将学生信息封装到一个
student对象中,进行操作时再建立实例进行操作- 代码
public class Student {
String number;
String name;
int mark;
public Student(String number,String name,int mark){
this.number = number;
this.name = name;
this.mark = mark;
}
public Student(){
}
}
- 主要功能的实现主要是靠
level和print两个方法实现, 并设计菜单使程序能够调用两个方法- 代码
import java.util.Scanner;
public class ex1 {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
Scanner n = new Scanner(System.in);
Scanner u = new Scanner(System.in);
Scanner c = new Scanner(System.in);
Student student = new Student();
System.out.println("请输入要处理的学生学号");
student.number = u.next();
System.out.println("请输入要处理的学生姓名");
student.name = n.next();
System.out.println("请输入要处理的学生分数");
student.mark = s.nextInt();
System.out.println("请选择要对该学生成绩进行的操作");
System.out.printf("1.对成绩评级\n2.打印学生信息\n");
int ch = c.nextInt();
ex1 ex = new ex1();
switch(ch){
case(1):
ex.level(student.mark);
break;
case(2):
ex.print(student.number,student.name,student.mark);
}
}
public void level(int score) {
char level;
if (score >= 90) {
level = 'A';
} else if (score >= 80 && score < 90) {
level = 'B';
} else if (score >= 70 && score < 80) {
level = 'C';
} else if (score >= 60 && score < 70) {
level = 'D';
} else {
level = 'E';
}
System.out.printf("得分等级:%c\n", level);
}
public void print(String num,String nam,int Mark){
System.out.printf("该学生学号:%s 姓名:%s 成绩%d",num,nam,Mark);
}
}
- 测试并调试代码
使用命令行进行编译

使用IDEA进行编译调试
设置断点,可以设置条件

打开Debug运行,输入数据

设置两个断点,点击
Resume让程序直接运行到第二个断点下一行

点击单步执行(
Step Into或Step Over),最后得出结果

单步执行效率低,调试大循环用条件断点比较方便,我的代码里没有循环,要体现条件断点在循环中的作用,用老师给的带循环的代码试了一下
设置条件断点,"i==50"

单击
Resume,可以查看循环运行中各个值变化

问题及解决过程
问题:
student对象中有name和number两个String型变量,不知道怎么输入解决过程:书本上的
Scanner方法中只讲解了输入int、long等类型变量,并没有讲解输入String或char变量,上网查资料,直接用next()方法就可以取到字符串问题:使用IDEA运行成功,使用命令行编译会显示输出部分有错

解决过程:本来以为是
printf、prinntln以及输出内容格式上的问题,修改了格式发现还是会出问题,后来发现是编码的问题,IDEA与命令行所用编码不同,就将编码改为了UTF-8,运行成功

总结体会
- 第一次实验将之前对着书敲代码的过程转换成了写程序的能力,实验过程中不仅更加熟悉了命令行和IDEA,还学习了IDEA环境下的Debug调试,还联系了自己编程的能力
20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告的更多相关文章
- 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20175316 盛茂淞 2018-2019-2 <Java程序设计>实验一 Java开发环境的熟悉 实验报告 一.实验要求 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA ...
- 20165327《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...
- 20165205 实验一 java开发环境的熟悉 实验报告
20165205 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘喆君 学号:20165205 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验 ...
- 实验一《开发环境的熟悉》&实验二《固件设计》
20145312&20145338 实验一<开发环境的熟悉>&实验二<固件设计> 合作博客链接:http://www.cnblogs.com/yx2014531 ...
- 20162327实验一Java开发环境的熟悉实验报告
20162327 <程序设计与数据结构>第一次实验报告 基础知识 1.JDB的使用 使用JDB调试程序需要以下五个步骤: 1.设置断点 stop in 2.run 3.print 4.ne ...
- 20145233韩昊辰 《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145233 <Java程序设计>实验报告一:Java开发环境的熟悉 实验要求 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调试Java程序. 实验内容 ...
- 20175236 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:温丰帆 学号:20175236 指导教师:娄嘉鹏 实验日期:2019年4月2日 实验时间:13:45 - 15:25 实验序号:实验一 ...
- 20165234 《Java程序设计》实验一 Java开发环境的熟悉
一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘津甫 学号:20165234 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验时间:15:35 - 17:15 实验序 ...
- 2018-2019-2 20175227张雪莹 《Java程序设计》 实验一 Java开发环境的熟悉
2018-2019-2 20175227张雪莹<Java程序设计> 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:张雪莹 学号:2017 ...
随机推荐
- candence 笔记总结
1.解决candece 启动后提示找不到licence文件的错误: candece的安装就不说了,按照破解步骤一步一步来就行了,但是装完后发现每次启动都会报错 "OrCAD Capture ...
- grep -v 排除多人字符串
# egrep -v '^$|^#' /etc/httpd/conf/httpd.conf # grep -v '^$\|^#' /etc/httpd/conf/httpd.conf
- Linux下Vi/Vim使用笔记
启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...
- 那些年,我们在Django web开发中踩过的坑(一)——神奇的‘/’与ajax+iframe上传
一.上传图片并在前端展示 为了避免前端整体刷新,我们采用ajax+iframe(兼容所有浏览器)上传,这样用户上传之后就可以立即看到图片: 上传前: 上传后: 前端部分html: <form s ...
- PHP+MYSQL+AJAX实现每日签到功能
一.web前端及ajax部分 文件index.html <html> <head> <meta http-equiv=Content-Type content=" ...
- ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statemen
转自:http://www.cnblogs.com/iosdev/archive/2013/07/15/3190431.html mysql 配置文件目录:/etc/my.cnf root 密码为空的 ...
- ZOJ 3494 BCD Code(AC自动机+数位DP)
BCD Code Time Limit: 5 Seconds Memory Limit: 65536 KB Binary-coded decimal (BCD) is an encoding ...
- 简单用DOM4J结合XPATH解析XML
由于DOM4J在解析XML时只能一层一层解析,所以当XML文件层数过多时使用会很不方便,结合XPATH就可以直接获取到某个元素 使用dom4j支持xpath的操作的几种主要形式 第一种形式 ...
- Linux使用du和df查看磁盘和文件夹占用空间
df df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力. df -lh 参数 -h 表示使用「Human-readable」输出,也就是使用 GB.MB 等易读的格式. $ ...
- 一个android样本的过保护
前段时间处理一个android样本,样本本身作用不大,但是加了保护,遂做一个过保护的记录 通过dex2jar将dex转为jar文件的时候发现无法成功,通过抛出的异常可知,此处MainActivity: ...