标签:
实验一 Java开发环境的熟悉
实验内容
1. 使用JDK编译、运行简单的Java程序
2.使用Eclipse 编辑、编译、运行、调试Java程序
实验要求
1.没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程
2.完成实验、撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。
3.实验报告中统计自己的PSP(Personal Software Process)时间
步骤 |
耗时 |
百分比 |
需求分析 |
||
设计 |
||
代码实现 |
||
测试 |
||
分析总结 |
4. 严禁抄袭。
实验知识点
1. JVM、JRE、JDK的安装位置与区别;
2. 命令行运行javac,java;javac -cp; java -cp;
3. PATH,CLASSPATH,SOURCEPATH的设定方法与应用;
4. 包管理:package;import;javac -d ;
5. Eclipse(Netbeans)管理Java项目,调试:断点、单步执行等;
6. Java基础语法:类型与类型转换;变量;运算符;流程控制等;
7. JDK帮助文档的使用;
eclipse
命令并回车或单击桌面上的Eclipse EE图标打开EclipseFile->New-> Java Project
新建Java项目HelloJDB
(你可以自己起名),并单击Finish
按钮完成新建项目File->New->Class
新建Java类czw
,类名HelloJDB
(单词首字母大写),并勾选上自动产生main函数选项,最后单击Finish
按钮7.单击运行按钮(或使用Ctrl+F11
快捷键),就可以在控制台(Console)中看到运行结果。如下图所示:8.下面我们练习调试程序,首先我们通过单击Window->Open Perspective->Debug
打开调试视图,如下图所示:
9.调试程序首先要会设置断点和单步运行。设置断点比较简单,如下图所示:
然后单击调试按钮(或使用F11
快捷键)开始调试Java程序,我们可以看到程序停留在了第4行,如下图所示:
注意,此时第4行代码并没有执行,我们可以把鼠标放到变量名上来查看变量的值,此时i的值并不是5,我们通过单步运行让程序运行到第5行,单步运行有两种:Step Into(快捷捷F5)和Step Over(快捷捷F5),这两种单步运行功能在运行语句时没有区别,在执行函数调用语句时,Step Into
会跳入函数实现,Step Over
会直接执行完函数,实际使用中我们优先使用Step Over
,只有函数执行出错了,说明程序问题在被调用函数中,这时再回来通过Step Into
进入函数进行调试。我们单击一下Step Over
图标(或F6
),程序停在了第5行,这时查看变量i的值,会看到i等于5。
10.单步执行效率比较慢,如果我们感觉到第6行到第10行的代码没有问题了,想让程序直接运行到第11行,怎么办?首先我们要在第11行设置断点,然后单击Resume
图标(快捷键F8
),程序就运行到了第11行,如下图所示:
11.单步执行效率比较慢还导致另外一个问题,比如一个大循环中间出了问题怎么办?这时可以通过条件断点解决问题。调试循环代码时,会有一个值我们特别关注,这时在Variable标签中查看变量的值,比如我们此时比较关注sum
,每次单步执行都可以看到sum
的变化情况了,
设置条件断点,我们在第11行左边单击鼠标右键,选择Breakpoint Properties...
如下图所示:我们设置条件“i==50”,如下图所示:按一下F8,我们可以查看i的是50了。如下图所示:
掌握这些调试的基本技巧可以解决大家平时遇到的大部分问题,其他调试方法可以参见参考资料。
import java.io.*;
import java.util.Scanner;
public class kaiser {
public static void main(String[] args) {
System.out.println("请输入密钥:");
Scanner s = new Scanner(System.in);
int a = s.nextInt();
C(a); }
public static void C(int n){
try{
char b[];
BufferedReader br2 = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一段明文:");
String str2=br2.readLine();
b=str2.toCharArray();
System.out.println("密文为:");
int k=n;
for(int i=0;i<str2.length();i++){
char ch=(char)((b[i]-‘a‘+k)%26+‘a‘);
System.out.print(ch);
}
System.out.println("\n密匙K="+k);
}
catch(IOException e){
System.out.println(e.getMessage());
}
}
}
四、遇到的问题与解决方法
在设置断点时不是很熟练,对英文的某些单词不熟- -。还有就是编程凯撒密码的时候不是很熟练,请教了其他同学。
五、实验收获
由于学校网速实在太渣……然后就是直接在window的环境下做出的实验,这次实验让我对java代码的调试有了进一步的认识,eclipse对错误的发现以及调试很明显并且易懂,希望以后的实验都能很顺利的完成,在错误中不断学习,收获更多的知识
标签:
原文地址:http://www.cnblogs.com/vioczw/p/4432930.html