20145308刘昊阳 《Java程序设计》实验一报告

实验名称

Java开发环境的熟悉

实验内容

  1. 使用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对象中,进行操作时再建立实例进行操作
      • 代码
  1. public class Student {
  2. String number;
  3. String name;
  4. int mark;
  5. public Student(String number,String name,int mark){
  6. this.number = number;
  7. this.name = name;
  8. this.mark = mark;
  9. }
  10. public Student(){
  11. }
  12. }
  • 主要功能的实现主要是靠levelprint两个方法实现, 并设计菜单使程序能够调用两个方法

    • 代码
  1. import java.util.Scanner;
  2. public class ex1 {
  3. public static void main(String[] args){
  4. Scanner s = new Scanner(System.in);
  5. Scanner n = new Scanner(System.in);
  6. Scanner u = new Scanner(System.in);
  7. Scanner c = new Scanner(System.in);
  8. Student student = new Student();
  9. System.out.println("请输入要处理的学生学号");
  10. student.number = u.next();
  11. System.out.println("请输入要处理的学生姓名");
  12. student.name = n.next();
  13. System.out.println("请输入要处理的学生分数");
  14. student.mark = s.nextInt();
  15. System.out.println("请选择要对该学生成绩进行的操作");
  16. System.out.printf("1.对成绩评级\n2.打印学生信息\n");
  17. int ch = c.nextInt();
  18. ex1 ex = new ex1();
  19. switch(ch){
  20. case(1):
  21. ex.level(student.mark);
  22. break;
  23. case(2):
  24. ex.print(student.number,student.name,student.mark);
  25. }
  26. }
  27. public void level(int score) {
  28. char level;
  29. if (score >= 90) {
  30. level = 'A';
  31. } else if (score >= 80 && score < 90) {
  32. level = 'B';
  33. } else if (score >= 70 && score < 80) {
  34. level = 'C';
  35. } else if (score >= 60 && score < 70) {
  36. level = 'D';
  37. } else {
  38. level = 'E';
  39. }
  40. System.out.printf("得分等级:%c\n", level);
  41. }
  42. public void print(String num,String nam,int Mark){
  43. System.out.printf("该学生学号:%s 姓名:%s 成绩%d",num,nam,Mark);
  44. }
  45. }
  • 测试并调试代码

    • 使用命令行进行编译

    • 使用IDEA进行编译调试

      • 设置断点,可以设置条件

      • 打开Debug运行,输入数据

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

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

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

        • 设置条件断点,"i==50"

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

问题及解决过程

  • 问题:student对象中有namenumber两个String型变量,不知道怎么输入

  • 解决过程:书本上的Scanner方法中只讲解了输入intlong等类型变量,并没有讲解输入Stringchar变量,上网查资料,直接用next()方法就可以取到字符串

  • 问题:使用IDEA运行成功,使用命令行编译会显示输出部分有错

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

总结体会

  • 第一次实验将之前对着书敲代码的过程转换成了写程序的能力,实验过程中不仅更加熟悉了命令行和IDEA,还学习了IDEA环境下的Debug调试,还联系了自己编程的能力

20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告的更多相关文章

  1. 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20175316 盛茂淞 2018-2019-2 <Java程序设计>实验一 Java开发环境的熟悉 实验报告 一.实验要求 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA ...

  2. 20165327《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...

  3. 20165205 实验一 java开发环境的熟悉 实验报告

    20165205 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘喆君 学号:20165205 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验 ...

  4. 实验一《开发环境的熟悉》&实验二《固件设计》

    20145312&20145338 实验一<开发环境的熟悉>&实验二<固件设计> 合作博客链接:http://www.cnblogs.com/yx2014531 ...

  5. 20162327实验一Java开发环境的熟悉实验报告

    20162327 <程序设计与数据结构>第一次实验报告 基础知识 1.JDB的使用 使用JDB调试程序需要以下五个步骤: 1.设置断点 stop in 2.run 3.print 4.ne ...

  6. 20145233韩昊辰 《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)

    20145233 <Java程序设计>实验报告一:Java开发环境的熟悉 实验要求 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调试Java程序. 实验内容 ...

  7. 20175236 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

    一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:温丰帆 学号:20175236 指导教师:娄嘉鹏 实验日期:2019年4月2日 实验时间:13:45 - 15:25 实验序号:实验一 ...

  8. 20165234 《Java程序设计》实验一 Java开发环境的熟悉

    一.实验报告封面 课程:Java程序设计  班级:1652班  姓名:刘津甫  学号:20165234 指导教师:娄嘉鹏  实验日期:2018年4月2日 实验时间:15:35 - 17:15  实验序 ...

  9. 2018-2019-2 20175227张雪莹 《Java程序设计》 实验一 Java开发环境的熟悉

    2018-2019-2 20175227张雪莹<Java程序设计> 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:张雪莹 学号:2017 ...

随机推荐

  1. Android Tab -- 使用Fragment、FragmentManager来实现

    原文地址:http://blog.csdn.net/crazy1235/article/details/42678877 效果: 代码:https://github.com/ldb-github/La ...

  2. Win10开机提示Resume from Hibernation该怎么办?

    Windows10系统的电脑开机提示:Resume from Hibernation(从休眠恢复),这是电脑没有真正关机,而是上次关机时进入了[休眠状态],所以开机时提示:从休眠恢复.如何解决Wind ...

  3. 【JAVA网络流之TCP与UDP 】

    一.ServerSocket java.lang.Object |-java.net.ServerSocket 有子类SSLServerSocket. 此类实现服务器套接字.服务器套接字等待请求通过网 ...

  4. HDU5781 ATM Mechine(DP 期望)

    应该是machine 和POJ3783 Balls类型相似. 现在上界为i元,猜错次数最多为j时,开始猜测为k元,有两种情况: 1 猜中:(i - k + 1) * dp[i - k][j] 2 猜不 ...

  5. 静态/动态函数库设计,王明学learn

    静态/动态函数库设计 Linux应用程序设计中需要的外部函数主要由函数库和系统调用来提供. 两者区别: 一.函数库分类 函数库按照链接方式可分为: 1.静态链接库 对函数库的链接是放在编译时期(com ...

  6. DWZ分页、排序失效小结

    1. 在视图文件中与分页相关的代码段 <form id="pagerForm" method="post" action="w_list.htm ...

  7. 写给自己的web开发资源

    web开发给我的感觉就是乱七八糟,而且要学习感觉总是会有东西要学习,很乱很杂我也没空搞,(其实学习这个的方法就是去用它,什么你直接用?学过js么学过jquery么?哈哈,我没有系统的看完过,但是也做出 ...

  8. JSHint配置详解

    Also available on Github JSHint配置详解 增强参数(Enforcing Options) 本类参数设为true,JSHint会产生更多告警. bitwise 禁用位运算符 ...

  9. Emacs 之窗口管理

    // */ // ]]> Emacs 之窗口管理 Table of Contents 1. Emacs 窗口相关 1.1. Emacs 里调整 window 大小 1.2. Emacs winn ...

  10. input上下居中问题

    IE:不管该行有没有文字,光标高度与font-size一致.FF:该行有文字时,光标高度与font-size一致.该行无文字时,光标高度与input的height一致.Chrome:该行无文字时,光标 ...