20165330 实验一 Java开发环境的熟悉
一、实验内容及步骤
- 使用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运行带包的程序
实验截图如下:

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


二、练习
题目:4. 实现学生成绩管理功能(增删改,排序,查找),并进行测试(正常情况,异常情况,边界情况)。
- 要求:通过命令行和IDEA两种方式实现
- 设计思路:首先要有多个类的运用,分别进行功能操作、信息存放和功能实现的计算方法。
- 主类为功能操作页面,显示各项功能操作
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开发环境的熟悉的更多相关文章
- 20145205 实验一 Java开发环境的熟悉
实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...
- 实验一 Java开发环境的熟悉
实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 1.没 ...
- 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...
- 实验一Java开发环境的熟悉
实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...
- 20145225《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)
20145225<Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑 ...
- 20145208实验一 Java开发环境的熟悉
20145208实验一 Java开发环境的熟悉 使用JDK编译.运行简单的java程序 命令行下程序开发 在命令行下建立实验目录,然后创建并进入该目录后的子目录. 编译并运行一个代码 使用IDEA 编 ...
- 实验一 Java开发环境的熟悉(Linux + Eclipse)
学号 20175206 实验一 <Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实 ...
- 实验一 Java开发环境的熟悉(Linux + Idea) 20175301李锦然
https://gitee.com/ShengHuoZaiDaXue/20175301.git 实验一 Java开发环境的熟悉(Linux + Idea) 实验内容 1.使用JDK编译.运行简单的Ja ...
- 2018-2019-2 实验一 Java开发环境的熟悉
实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与区别: 2. 命令行运行javac:ja ...
随机推荐
- Qt 插件综合编程-基于插件的OpenStreetMap瓦片查看器client(1)-墨卡托投影与坐标控制
(相关的代码能够从https://github.com/goldenhawking/mercator.qtviewer.git直接克隆) 我们如今是准备做一个C/S架构的地图显示控件.就必定牵扯到坐标 ...
- glibc中malloc()的空间overhead
在linux下调用malloc()分配内存的时候,实际占用的内存与请求的内存尺寸的关系是什么呢,这个需要研究一下glibc中malloc()的实现.现在常见linux发行版中带的glibc中采用的都是 ...
- java:常用的两种设计模式(单例模式和工厂模式)
一.单例模式:即一个类由始至终只有一个实例.有两种实现方式(1)定义一个类,它的构造方法是私有的,有一个私有的静态的该类的变量在初始化的时候就实例化,通过一个公有的静态的方法获取该对象.Java代码 ...
- 基础地图Android SDK
开发者可利用SDK提供的接口,使用百度为您提供的基础地图数据.目前百度地图SDK所提供的地图等级为3-21级,所包含的信息有建筑物.道路.河流.学校.公园等内容. V3.7.0起,地图支持缩放至21级 ...
- JAVA判断字符串相等
java中判断字符串是否相等有两种方法:1.用“==”运算符,该运算符表示指向字符串的引用是否相同,比如: String a="abc";String b="abc&qu ...
- JAVA数据库连接池的革命 -- 从BoneCP到HikariCP
从BoneCP到HikariCP 今天笔者本想更新一下项目中使用到的BoneCP版本的.却无意发现jolbox网站打不开了.起初以为是被墙掉了,经过一番查找,居然在BoneCP的Github站看到了如 ...
- 已知问题汇总 (2013-11-30) - QQ空间, EXTJS
目前发现两个已知问题暂时无法得到解决: 1. QQ空间问题. 打开页面 http://user.qzone.qq.com/822994792/311, 点击 "xxx人赞" 这个链 ...
- Linux(centOS)手动安装删除Apache+MySQL+PHP+Memcached原创无错版
=================== 第一步:Apache安装 =================== 下载 去 http://www.apache.org 自己找最新的 国内有很多镜像点例如人人和 ...
- Toad 所有 菜单说明(太多)
菜单说明 新版本 toad 软件中, 比较有用的菜单 session 菜单 Session Information: 显示当前session的用户的情况, 比如权限, 授权等 Database ...
- treegrid-dnd.js
(function($){ $.extend($.fn.treegrid.defaults, { onBeforeDrag: function(row){}, // return false to d ...
