java实验报告一

时间:2022-12-29 16:16:25

一、实验内容

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

2.使用Eclipse 编辑、编译、运行、调试Java程序

二、实验步骤

(一)命令行下Java程序开发

1. 首先双击桌面上的Xface终端图标,如下图所示:

java实验报告一

2.打开终端(类似Windows下的cmd),之后会自动运行shell程序

3.输入cd Code命令进入Code(注意C要大写)目录,如下图所示:

java实验报告一

4. 输入mkdir 20135301 命令建立实验目录,可以使用ls命令或dir命令查看建立的目录情况。如下图所示:

java实验报告一

5.输入cd 20135301命令进入实验目录,再输入类似mkdir exp1建立第一个实验目录,然后输入cd exp1进入实验一目录,可以输入pwd命令查看当前工作路径。

6.输入gedit Hello.java(注意把代码保存到exp1目录中)或vim Hello.java(建议大家花点时间学习一下Vim)编辑Hello.java,并输入以下代码:

1. 1 package ljp;

2. 2 import java.util.Scanner;

3. 3 public class Hello{

4. 4     public static void main(String[] args){

5. 5       System.out.println("Input your first name, please:");

6. 6       Scanner s = new Scanner(System.in);

7. 7       String name = s.next();

8. 8       System.out.println("Hello " + name + " !");

9. 9    }

10 }

注意代码的第一行,这会影响到我们使用javac编译代码的方式。 注意代码第二行,我们使用到Java类库中的类时,要用import导入相关的类(你可以暂时理解为C语言中include的功能),导入路径可以查看JDK帮助文档,比如我们使用到了Scanner类。

7.输入javac -d .Hello.java命令编译代码,输入java ljp.Hello命令运行 程序。结果如下图所示: 注意:代码中有package时,使用javac编译代码时一定要加-d参数,运行代码时一定要加包名前缀

java实验报告一

java实验报告一

(二)Eclipse下Java程序开发、调试

1. 在命令行中输入eclipse命令并回车或单击桌面上的Eclipse EE图标打开Eclipse,如下图所示:

java实验报告一

2. 在Eclipse中单击File->New-> Java Project新建Java项目,如下图所示:

java实验报告一

3. 输入项目名称HelloJDB,并单击Finish按钮完成新建项目

4. 在Eclipse中单击File->New->Class新建Java类

5.根据Java代码规范输入包名ljp(小写),类名HelloJDB(单词首字母大写),并勾选上自动产生main函数选项,最后单击Finish按钮

6.输入如下代码:

1 package ljp;

2 public class HelloJDB {

3    public static void main(String[] args) {

4        int i = 5;

5        int j = 6;

6        int sum = add(i, j);

7        System.out.println(sum);

8

9        sum = 0;

10        for(i=0; i< 100; i++)

11            sum += i;

12

13        System.out.println(sum);

14    }

15

16    public static int add(int augend, int addend){

17        int sum = augend + addend;

18        return sum;

19    }

20}

7.单击运行按钮(或使用Ctrl+F11快捷键),就可以在控制台(Console)中看到运行结果。

8.练习调试程序,通过单击Window->Open Perspective->Debug打开调试视图

9.调试程序首先要会设置断点和单步运行。设置断点比较简单,如下图所示:

java实验报告一

然后单击调试按钮(或使用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。如下图所示:

java实验报告一

10.单步执行效率比较慢,如果我们感觉到第6行到第10行的代码没有问题了,想让程序直接运行到第11行,怎么办?首先我们要在第11行设置断点,然后单击Resume图标(快捷键F8),程序就运行到了第11行,如下图所示:

java实验报告一

11.单步执行效率比较慢还导致另外一个问题,比如一个大循环中间出了问题怎么办?这时可以通过条件断点解决问题。调试循环代码时,会有一个值我们特别关注,这时在Variable标签中查看变量的值,比如我们此时比较关注sum,每次单步执行都可以看到sum的变化情况了,

设置条件断点,我们在第11行左边单击鼠标右键,选择Breakpoint Properties.

我们设置条件“i==50”,如下图所示:

java实验报告一

按一下F8,我们可以查看i的是50了。

(三)练习(通过命令行和Eclipse两种方式实现,自己的学号后两位与题目总数取余的结果就是自己要完成的题号,在Eclipse下练习调试程序)

我的题目: 实现凯撒密码,并进行测试。

1.在Eclipse中实现

java实验报告一

2.通过命令行实现

java实验报告一

3.实验代码

import java.io.*;

import java.util.Scanner;

public class Caesar

{

public static void main(String[] args){

System.out.print("qing shu ru mi yao");

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("shu ru yi duan ming wen");

String str2=br2.readLine();

b=str2.toCharArray();

System.out.println("mi yao");

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("mi yao K="+k);

}

catch(IOException e){

System.out.println(e.getMessage());

}

}

}

三、实验中遇到的问题

1.实验一

在命令行中编译时,多次编译不成功如图所示,后来经过问老师知道了应输入如下

javac –d . Hello.java

可以注意到-d后面和Hello前面是有空格的

java实验报告一

2.实验二

设置断点的方法,自己下载的软件和实验楼中断点设置的方法并不完全一致,虽然耗费了一点时间寻找,不过最后还是自己找到了。

四、实验总结

本次是我第一次使用实验楼来进行编程,感觉很是不一样。在第一项内容中,主要是认识java的运行环境;第二项内容是熟悉软件和简单操作;第三项是加以运用。第一次使用这个网页,加上网速原因,令我很不习惯,但是通过努力和大家积极努力协作,同时请教老师同学,顺利的化解了一道道的障碍。

这让我不断的对学习技术又有了新的认识:学习中我们必须边总结边学习,开始阶段不能放过遇到的任何小问题,不管是否简单与否都要好好完成,努力跟上学习进度。以后还要一步步走。

java实验报告一的更多相关文章

  1. Java实验报告五:Java网络编程及安全

    Java实验报告五:Java网络编程及安全                                                                               ...

  2. Java实验报告二:Java面向对象程序设计

    Java实验报告二:Java面向对象程序设计                                                                               ...

  3. 20145203盖泽双:Java实验报告二

    Java实验报告二:Java面向对象程序设计 实验要求: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验内容 ...

  4. 20135231 JAVA实验报告三:敏捷开发与XP实践

    ---恢复内容开始--- JAVA实验报告三:敏捷开发与XP实践 20135231 何佳 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习 ...

  5. 20155310第一周JAVA实验报告

    20155310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...

  6. 20145310第一周JAVA实验报告

    20145310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...

  7. 20145322第一次JAVA实验报告

    20145322第一周JAVA实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的熟悉(Linux + Eclipse) 实验日期:2016.04.08 实 ...

  8. Java实验报告(一)

    Java实验报告(一) 实验过程 1. 打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个&quot ...

  9. 第三次Java实验报告

    Java实验报告 班级 计科二班 学号20188437 姓名 何磊 完成时间 2019/9/22 评分等级 实验三 String类的应用 实验目的 掌握类String类的使用: 学会使用JDK帮助文档 ...

  10. Java实验报告&amp&semi;&amp&semi;课程报告

    Java实验报告 班级 计算机科学与技术二班 学号 20188450 姓名 李代传 完成时间 2019/9/19 评分等级 实验二 Java简单类与对象 实验目的 掌握类的定义,熟悉属性.构造函数.方 ...

随机推荐

  1. 远程桌面时plsql的复制粘贴功能失效

    解决办法:重新启动远程桌面上的rdpclip进程就可以复制粘贴了,但是每次重开远程桌面都会出现同样的问题.可以rdpclip这个设置成开机启动.

  2. linux内核&lpar;kernel&rpar;版本号的意义

    转自:http://www.cnblogs.com/jsjliuxing/archive/2011/12/01/2271182.html 在linux下有一个目录,即/usr/src/kernels/ ...

  3. Spring Boot文档阅读

    原因之初 最初习惯百度各种博客教程,然后跟着操作,因为觉得跟着别人走过的路走可以少走很多弯路,省时间.然而,很多博客的内容并不够完整,甚至错误,看多了的博客甚至有千篇一律的感觉.此外,博客毕竟是记载博 ...

  4. SVN与TortoiseSVN实战:从入门到精通

    SVN,版本控制程序,是支撑项目开发的基础工具. 在团队开发中,不管是程序员还是美工.测试等人员,都会用到SVN,通常会把SVN视为源代码管理工具,但对于SVN更准确的理解是: “帮助参与项目人员的管 ...

  5. HDU 2844 Coins(多重背包)

    点我看题目 题意 :Whuacmers有n种硬币,分别是面值为A1,A2,.....,An,每一种面值的硬币的数量分别是C1,C2,......,Cn,Whuacmers想买钱包,但是想给人家刚好的钱 ...

  6. PySpider框架的基本用法

    pyspider安装: 3.7之后无法正常使用,使用可以下载Python3.6或以下,或者修改pyspider内部代码 ———————————————————————————————————————— ...

  7. MySQL建表语句&plus;添加注释

    1.建表+注释 CREATE TABLE student( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '学号', name ) COMMENT '姓名', a ...

  8. 浅析Hyperledger Fabric共识算法 摘自http&colon;&sol;&sol;www&period;cocoachina&period;com&sol;blockchain&sol;20180829&sol;24728&period;html

    Hyperledger Fabric共识算法 区块链系统是一个分布式架构,交易账本信息由各个节点管理,组成一个庞大的分布式账本.在分布式系统中,各个节点收到的交易信息的顺序可能存在差异(例如,网络延迟 ...

  9. android开发&lpar;28&rpar; 做个 指南针 应用

    参考网上的资料,做了个指南针应用玩玩. 步骤: 1.获得 SensorManager. mSensorManager = (SensorManager) getSystemService(SENSOR ...

  10. java-Runtime 调用命令

    java是一个跨平台的语言,可以在多种平台上运行相应的程序,但是有些时候进行数据的提取时,可能就需要系统的相关命令,尤其是调用linux命令 这时候就需要使用java的Runtime命令,来执行lin ...