一、实验内容及步骤

  1. 使用JDK编译、运行简单的Java程序

    • 使用命令 cd 20165330 进入到学号目录下
    • mkdir exp1新建文件夹
    • mkdir bin src建立bin src目录
    • vim src/Hello.java在src目录下编写程序
    • javac -g -d bin src/Hello.java编译到bin目录
    • java -cp bin ljp.Hello运行带包的程序

实验截图如下:

  1. 使用IDEA编辑、编译、运行、调试Java程序

    • 打开IDEA创建HelloJDB工程,并新建HelloJDB的class文件
    • 编写代码
    • 运行程序点击Run
    • 设置断点:在所想设的行处点击左键
    • 点击debug开始调试
    • 点击step into(F7)或step over(F8)进行单步运行
    • 可在断点处右键设置条件,后单击Resume图标,可直接运行到断点处

实验截图如下:



二、练习

题目:4. 实现学生成绩管理功能(增删改,排序,查找),并进行测试(正常情况,异常情况,边界情况)。

  1. 要求:通过命令行和IDEA两种方式实现
  2. 设计思路:首先要有多个类的运用,分别进行功能操作、信息存放和功能实现的计算方法。
  • 主类为功能操作页面,显示各项功能操作
class Menu
{
public static void paint()
{
clrscr();
for (int i = 0; i < 80; i++)
{
System.out.print('=');
}
System.out.println(); System.out.println(" 学生成绩管理系统 ");
System.out.println();
System.out.println(" 1 输入记录 2 输出所有记录");
System.out.println(" 3 按平均成绩排序并输出 4 查找记录");
System.out.println(" 5 统计各分数段人数 6 删除记录");
System.out.println(" 0 退出"); for (int i = 0; i < 80; i++)
{
System.out.print('=');
}
System.out.println(" ");
System.out.println();
System.out.print("请输入命令:");
}
  • 然后实现信息存放,在这里我共输入了三门科目的成绩:Java、数学、英语
    public Student(int number, String name, int java, int math, int english)
{
this.number = number;
this.name = name;
this.english = english;
this.math = math;
this.java = java;
total = english + math + java;
average = total/3;
} public int getNumber()
{
return number;
} public String getName()
{
return name;
} public int getEnglish()
{
return english;
} public int getMath()
{
return math;
} public int getJava()
{
return java;
} public int getAverage()
{
return average;
} public int getTotal()
{
return total;
}
}
  • 最后开始功能实现的运算方法(包括为增加、排序、查找、删除、总分、平均分、统计分数段)
class StudentSet
{
private static final int maxLen = 1000;
private static int len = 0;
private static Student[] data = new Student[maxLen]; public static int getMaxLen()
{
return maxLen;
} public static int getLen()
{
return len;
} public static Student getData(int index)
{
return data[index];
} public static int addData(Student newData)
{
if (len < maxLen)
{
data[len] = newData;
len++;
return 0;
} else
{
return -1;
}
} public static void sortData()
{
for (int i = 0; i < len -1; i++)
{
int minIndex = i;
for (int j = i+1; j < len; j++)
{
if (data[minIndex].getAverage() > data[j].getAverage())
{
minIndex = j;
}
}
if (minIndex != i)
{
Student temp = data[i];
data[i] = data[minIndex];
data[minIndex] = temp;
}
}
} public static int search(int number)
{
for(int i = 0; i < len; i++)
{
if (data[i].getNumber() == number)
{
return i;
}
}
return -1;
} public static int delete(int number)
{
for (int i = 0; i < len; i++)
{
if (data[i].getNumber() == number)
{
for (int j = i + 1; j < len; j++)
{
data[j-1] = data[j];
}
len--;
return 0;
}
}
return -1;
} public static int stat(int min, int max)
{
int sum =0; for (int i = 0; i < len; i++)
{
if ((data[i].getAverage() >= min) && (data[i].getAverage() <= max))
{
sum++;
}
}
return sum;
}
}
  • 运行结果截图:

  • 遇到的问题和解决过程

在运行时,出现

解决方法:翻看前面的代码,发现前面输入java成绩部分的java输入错误,导致与错误行中的java不对应,导致找不到该变量。

三、实验体会与总结

  • 在本次实验中,前两个实验都是基本的操作,很快就可下手做,也是我更掌握了运行java的基本步骤,还有特别注意的带包的程序运行的不同之处。
  • 第三个实验对我来说有很大难度,之前C语言也遇到过类似的问题,大概的框架自己是很快可以想出来的,在往其中填补代码的过程就显得吃力,翻看了很多书上的内容,也询问好多人,平常的敲代码这一项任务还是要多上心,代码的框架结构、语句使用自己有时也要仔细推敲一下。
步骤 耗时 百分比
需求分析 5min 4%
设计 20min 20%
代码实现 60min 57%
测试 15min 15%
分析总结 5min 4%

20165330 实验一 Java开发环境的熟悉的更多相关文章

  1. 20145205 实验一 Java开发环境的熟悉

    实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...

  2. 实验一 Java开发环境的熟悉

    实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 1.没 ...

  3. 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...

  4. 实验一Java开发环境的熟悉

    实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...

  5. 20145225《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)

    20145225<Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑 ...

  6. 20145208实验一 Java开发环境的熟悉

    20145208实验一 Java开发环境的熟悉 使用JDK编译.运行简单的java程序 命令行下程序开发 在命令行下建立实验目录,然后创建并进入该目录后的子目录. 编译并运行一个代码 使用IDEA 编 ...

  7. 实验一 Java开发环境的熟悉(Linux + Eclipse)

    学号 20175206 实验一 <Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实 ...

  8. 实验一 Java开发环境的熟悉(Linux + Idea) 20175301李锦然

    https://gitee.com/ShengHuoZaiDaXue/20175301.git 实验一 Java开发环境的熟悉(Linux + Idea) 实验内容 1.使用JDK编译.运行简单的Ja ...

  9. 2018-2019-2 实验一 Java开发环境的熟悉

    实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与区别: 2. 命令行运行javac:ja ...

随机推荐

  1. libvirt网络过滤规则简单总结

    libvirt网络过滤规则, 一个过滤规则定义的示例: < filter name='no-ip-spoold'chain='ipv4' >  < uuid >fce8ae33 ...

  2. C++ virtual继承

    C++ virtual继承的还有一种名称是菱形继承.主要目的是用于解决从不同类继承来的同名数据成员在内存中有不同的拷贝.造成数据不统一的问题,以致于在进行类释放时造成内存泄漏. 将共同的基类作为虚基类 ...

  3. 每日英语:Air Pollution From Coal Use Cuts Lifespans in China, Study Shows

    Air pollution from coal combustion likely cut life expectancy in parts of China by more than five ye ...

  4. Xcode常见问题

    今天真机测试的时候,突然出现了这个错误:  not have an architecture that “Administrator”的 iPhone (3) can execute. 原因是我刚刚修 ...

  5. 移动端rem的用法

    标签: 1.rem(font size of the root element)是指相对于根元素的字体大小的单位,em(font size of the element)是指相对于父元素的字体大小的单 ...

  6. Ubuntu12.04 修复GRUB

    电脑安装了双系统,本来好好的GRUB管理启动,在重装过之后就只能进win7了,所以尝试将GRuB重新安装到mbr,使用GRUB作为启动管理程序. 1.制作U盘系统 使用软碟通,讲Ubuntu12.04 ...

  7. inline函数出现 undefined reference 错误

    原因:你把inline函数的implementation放到cpp文件里肯定要报这个错误 正确的做法:把inline函数的声明和实现都放到header里,例如 // declaration: retu ...

  8. Ubuntu 16.04安装有道词典

    以前用Ubuntu 14.04 的时候,直接下载有道词典官方deb安装包,就安装好了,现在换成Ubuntu 16.04因为有些依赖问题就无法安装成功.于是Google之,成功解决,也顺便熟悉了一下dp ...

  9. node js 调试出现同一个端口启动多次报错处理方案 Error: listen EADDRINUSE

    windows 下 1.查询端口占用的进程ID: netstat -aon | findstr "80"    80为端口号, 输出为: TCP    0.0.0.0:3000   ...

  10. JavaScript中的闭包详解

    闭包是JavaScript的重要特性,非常强大,可用于执行复杂的计算,可并不容易理解,尤其是对之前从事面向对象编程的人来说,对 JavaScript 认识和编程显得更难.特别是在看一些开源的JavaS ...