JAVA开发环境的熟悉
北京电子科技学院(BESTI)
实 验 报 告
课程:Java程序设计 班级:1352 姓名:马悦 学号:20135235
成绩: 指导教师:娄嘉鹏 实验日期:2015.4.13
实验密级: 预习程度: 实验时间:20:30---22:30
仪器组次: 必修/选修:选修 实验序号:1
实验名称: JAVA开发环境的熟悉
实验目的与要求:1. 使用JDK编译、运行简单的Java程序。
2.在命令行和Eclipse下编辑、编译、运行、调试简单的Java程序。
3.没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》课程。
实验仪器:
名称 型号 数量
PC ThinkPad 1
虚拟机 实验楼 1
一、实验步骤
1、命令行下JAVA的程序开发
(1)首先双击桌面上的Xface终端图标,打开终端(类似Windows下的cmd),之后会自动运行shell程序。
(2)输入cd Code命令进入Code(注意C要大写)目录,输入mkdir 20135235命令建立实验目录,可以使用ls命令或dir命令查看建立的目录情况。
(3)输入cd 20135235命令进入实验目录,再输入mkdir exp1建立第一个实验目录,然后输入cd exp1进入实验一目录,可以输入pwd命令查看当前工作路径。
(4)输入gedit Hello.java(注意把代码保存到exp1目录中)或vim Hello.java(建议大家花点时间学习一下Vim)编辑Hello.java,并输入以下代码:
1 package ljp;
2 import java.util.Scanner;
3 public class Hello{
4 public static void main(String[] args){
5 System.out.println("Input your first name, please:");
6 Scanner s = new Scanner(System.in);
7 String name = s.next();
8 System.out.println("Hello " + name + " !");
9 }
10 }
注意代码的第一行,这会影响到我们使用javac编译代码的方式。
注意代码第二行,我们使用到Java类库中的类时,要用import导入相关的类(可以暂时理解为C语言中include的功能),导入路径可以查看JDK帮助文档,比如我们使用到了Scanner类,路径见下图中红框:
(6)输入javac -d . Hello.java命令编译代码,输入java hyq.Hello命令运行程序。(在实验楼中已截图)
2、Eclipse下JAVA程序开发、调试
(1)在命令行中输入eclipse命令并回车或单击桌面上的Eclipse EE图标打开Eclipse
(2)在Eclipse中单击File->New-> Java Project新建Java项目。输入项目名称HelloJDB,并单击Finish按钮完成新建项目。
(3)在Eclipse中单击File->New->Class新建Java类。
(4)根据Java代码规范输入包名hyq,类名HelloJDB,并勾选上自动产生main函数选项,最后单击Finish按钮。
(5)输入代码,单击运行按钮(或使用Ctrl+F11快捷键),就可以在控制台(Console)中看到运行结果。
(6)调试程序。通过单击Window->Open Perspective->Debug打开调试视图。
(7)设置断点和单步运行。设置条件断点,在累加的左边单击鼠标右键,选择Breakpoint Properties.输入条件,按F8运行到条件停止。
3、练习:学号后两位取余——第1题:实现凯撒密码,并进行测试
import java.util.Scanner;
public class Caeser {
private String table; // 定义密钥字母表
private int key; // 定义密钥key
public Caeser(String table, int key) {
// 根据不同的字母表和不同的密钥生成一个新的凯撒算法,达到通用的目的
super();
this.table = table;
this.key = key;
}
public String encrypt(String from) {
//凯撒加密算法,传入明文字符串,返回一个密文字符串
String to = "";
for (int i = 0; i < from.length(); i++) {
to += table.charAt((table.indexOf(from.charAt(i))+key)%table.length());
}
return to;
}
public static void main(String[] args) {
Caeser caeser = new Caeser("abcdefghijklmnopqrstuvwxyz", 3);
Scanner scanner = new Scanner(System.in);
System.out.println("请输入要加密的字符串");
String str =scanner.nextLine(); //输入字符串
String result = caeser.encrypt(str); //调用加密方法进行加密
System.out.print(result); // 可得结果
}
}
二、实验分析
1、我的PSP时间
步骤 耗时 百分比
需求分析 5 10%
设计 5 10%
代码实现 10 20%
测试 20 40%
分析总结 10 20%
三、实验感想
本次实验是第一次使用实验楼、虚拟机和Linux环境。实验中的步骤非常详细,根据老师设定的实验步骤一步一步做完实验。但也遇到了很多问题:Linux命令行操作不熟练。在这次试验中,基本掌握了创建目录(mkdir)、查看目录(ls或dir)、进入目录(cd与Windows相同)和查看当前工作路径(pwd)的使用方法。编译一个.java文件格式:javac -d . 类名.java (注意:d后面那一个点的前后都有空格)运行文件格式:java 包名.类名。在eclipse中输入老师所给代码之后一直无法编译成功,反复核对,发现是在建立包的时候勾选了自动生成main函数,而我在写代码的时候自己又多敲了一个大括号,导致一直显示错误无法编译。
通过此次实验,更加了解了Linux环境,学会了如何调试出代码的错误、设断点、单步运行、改变单步运行效率以及一些快捷键的使用。收获颇多,今后将勤加练习,希望做得更好。