北京电子科技学院(BESTI)

              

课程:Java程序设计 班级:1351  姓名:李畅宇  学号:20135129

成绩:             指导教师:娄嘉鹏      实验日期:2015.4.15

实验密级:         预习程度:         实验时间:

仪器组次:          必修/选修:            实验序号:

实验名称:       Java开发环境的熟悉

实验目的与要求:实验内容1.使用JDK编译、运行简单的Java程序;

2.使用Eclipse 编辑、编译、运行、调试Java程序。实验要求1.没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》课程;2.完成实验、撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等);3.实验报告中统计自己的PSP

实验仪器:

名称

型号

数量

PC

1

实验内容、步骤与体会(附纸):

【实验步骤】

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

  1. 首先双击桌面上的Xface终端图标,如下图所示:
  2. 打开终端(类似Windows下的cmd),之后会自动运行shell程序,如下图所示:
  3. 输入cd Code命令进入Code(注意C要大写)目录,如下图所示:
  4. 输入mkdir 20135100 命令建立实验目录,注意目录名一定是自己的学号(学号要体现在实验报告截图中),可以使用ls命令或dir命令查看建立的目录情况。如下图所示:
  5. 输入cd 20135100命令进入实验目录,再输入类似mkdir exp1建立第一个实验目录,然后输入cd exp1进入实验一目录,可以输入pwd命令查看当前工作路径,如下图所示:
  6. 输入gedit Hello.java(注意把代码保存到exp1目录中)或vim Hello.java(建议大家花点时间学习一下Vim)编辑Hello.java,并输入以下代码:

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

【实验结果】

(二)EclipseJava程序开发、调试

  1. 在命令行中输入eclipse命令并回车或单击桌面上的Eclipse EE图标打开Eclipse
  2. 在Eclipse中单击File->New-> Java Project新建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. 调试程序首先要会设置断点单步运行。设置断点比较简单,然后单击调试按钮(或使用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. 1单步执行效率比较慢,如果我们感觉到第6行到第10行的代码没有问题了,想让程序直接运行到第11行,怎么办?首先我们要在第11行设置断点,然后单击Resume图标(快捷键F8),程序就运行到了第11行

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

【实验结果】

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

5. 实现求正整数1-N之间所有质数的功能,并进行测试。

【实验代码】

import java.util.Scanner;

public class Test_5

{

public static void main(String[] args)

{

Scanner sole = new Scanner(System.in);

int n1=0;

int n2 =0;

System.out.println("请输入第1个整数.");

n1 =  sole.nextInt();

System.out.println("请输入第2个整数.");

n2 =  sole.nextInt();

if(n1>n2)

{

n1=n1^n2;

n2=n1^n2;

n1=n1^n2;

}

int sum =0;

for(int i = n1; i<=n2; i++)

{

if(f(i)!=0)

{

System.out.println(i);

sum = sum+1;

}

}

System.out.println("sum="+sum);

}

public final static int f(int n)

{

if(n<1)

{

return 0;

}

int temp = (int)Math.sqrt(n);

int i=2;

for(; i<=temp;i++)

{

if(n%i==0)

{

break;

}

}

if(i-1==temp)

{

return n;

}

return 0;

}

}

【实验结果】

PSP

步骤

耗时

百分比

需求分析

 

10%

设计

 

40%

代码实现

 

40%

测试

 

10%

分析总结

【遇到的问题及分析】

代码编写完成第一次运行时编译有错误,然后通过错误提示及对代码反复检查,发现一个问题是文件名与类名不同,另一个是拼写错误,改正后代码可以正常运行。

JAVA程序设计 实验一报告的更多相关文章

  1. Java程序设计实验 实验五

    课程:Java程序设计实验   班级:1353  姓名:符余佳源  学号:20135321 成绩:                           指导教师:娄嘉鹏      实验日期:2015. ...

  2. 南邮JAVA程序设计实验1 综合图形界面程序设计

    南邮JAVA程序设计实验1  综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. ...

  3. Java程序设计 实验三

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计   班级:1353       姓名:李海空  学号:20135329 成绩:             指 ...

  4. Java程序设计 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  5. JAVA程序设计 实验一

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  6. Java程序设计 实验五

    实     验    报     告 课程:Java 班级: 1353    姓名:李海空   学号:20135329 成绩:              指导教师:娄嘉鹏   实验日期:2015.6. ...

  7. java程序设计实验

    建立文件调试jdk idea断点调试 项目素数的寻遍

  8. 《Java程序设计实验》 软件工程18-1,3 OO实验2

  9. 学号20155311 2016-2017-2 《Java程序设计》第一次实验报告

    课程:Java程序设计 实验名称:Java开发环境的熟悉 实验目的与要求: 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程: 完成实验. ...

随机推荐

  1. win10锁屏或睡眠一段时间后弹不出登录框

    win10锁屏或睡眠一段时间后弹不出登录框 文:铁乐与猫 通常发生在win10更新到10周年版后发生,也就是会卡在登录状态,但不见输入登录框. 我出现这种情况的时候不是很严重,一般等久些也能出现,但问 ...

  2. ccf--20131203--最大矩形

    刚开始我是想依次计算i个相连矩形的面积,然后找出最大的面积,但是这种做法是时间复杂度是O(n*n),运行会超时. 这个是网上的一种做法,分别计算以第i个矩形作为高时,最大的面积.这就要以i为起始点,左 ...

  3. elasticsearch使用bulk实现批量操作

    本篇文章提供ES原生批量操作语法及使用bulk批量操作文档.文章依旧提供语法,具体实现大家根据语法,在对应处进行替换即可 一.原生批量获取文档 1.获取指定文档值(1) 语法: GET /_mget ...

  4. python五十九课——正则表达式的拓展内容

    演示正则表达式的拓展内容:函数:finditer(regex,string,[flags=0]):参数:和match.search.findall一样理解功能:将所有匹配的数据封装为一个一个的matc ...

  5. (7)Python赋值机制

  6. Spark DataSet 、DataFrame 一些使用示例

    以前使用过DS和DF,最近使用Spark ML跑实验,再次用到简单复习一下. //案例数据 1,2,3 4,5,6 7,8,9 10,11,12 13,14,15 1,2,3 4,5,6 7,8,9 ...

  7. UCML 参与者关键 与依赖关联外键

  8. UCML异常提示:无效URI

    UCML异常提示界面,点击确定后UCML退出无法使用,原因见图二 图一: 图二:源码路径错误导致找不到路径出异常提示,在数据库中将数据update回正确路径即可解决该问题

  9. Oracle 中的一些重要V$ 动态性能视图,系统视图和表

    v$database:数据库的信息,如数据库名,创建时间等. v$instance 实例信息,如实例名,启动时间. v$parameter 参数信息,select * from v$parameter ...

  10. oracle 查询归档增长量

    set linesize 200set pagesize 100column day format a15 heading 'Day'column d_0 format a3 heading '00' ...