20155317 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉
20155317 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉
实验内容
使用JDK编译、运行简单的Java程序;
使用IDEA 编辑、编译、运行、调试Java程序。
实验知识点
JVM、JRE、JDK的安装位置与区别;
命令行运行
javac;java;javac -cp;java -cp;PATH,CLASSPATH,SOURCEPATH的设定方法与应用;
包管理:
package;import;javac -d;IDEA管理Java项目,调试:断点、单步执行等;
Java基础语法:类型与类型转换;变量;运算符;流程控制等;
JDK帮助文档的使用。
实验步骤
(一)macOS终端命令行下Java程序开发
- 步骤一:在终端中新建实验目录
- 按快捷键
contrl + alt + T打开macOS终端 - 输入
mkdir Code命令新建Code目录 - 输入
mkdir 20155317test建立以我学号命名的实验目录 - 输入
cd 20155317test进入实验目录 - 输入
mkdir exp1建立第一个实验目录 - 输入
cd exp1进入实验一目录 - 输入
pwd命令查看当前工作路径,如下图所示:
- 按快捷键
- 步骤二:vim下编译、运行Java程序
输入
vim Hello.java编辑Hello.java,按下i并输入以下代码:import java.util.Scanner;
public class Hello{
public static void main(String[] args){
System.out.println("Input your first name, please:");
Scanner s = new Scanner(System.in);
String name = s.next();
System.out.println("Hello " + name + " !");
}
}
然后按
esc退出编辑模式,再按:输入wq后回车保存并退出~
输入
javac -d . Hello.java
- 命令编译代码,输入java Hello命令运行程序。
(二)IDEA下Java程序开发、调试
- 新建「HelloJDB」类,输入如下代码:
public class HelloJDB {
public static void main(String[] args) {
int i = ;
int j = ;
int sum = add(i, j);
System.out.println(sum);
sum = ;
for(i=; i< ; i++)
sum += i;
System.out.println(sum);
}
public static int add(int augend, int addend){
int sum = augend + addend;
return sum;
}
}
- 步骤二:调试
- 设置断点:在需要设置断点的一行左侧灰色区域单击鼠标,出现红色圆点,比如我想在第8行设置断点:
开始调试:按ctrl + alt + R快捷键或在上方菜单栏Run里点击Debug...进行单步调试,如下图: 
- 设置条件断点:在设置好的断点(红色圆点)上右击,在Condition一框里设置条件“i==50”,如下图所示:

- 再次
Debug,得到调试结果如下: 
- 设置断点:在需要设置断点的一行左侧灰色区域单击鼠标,出现红色圆点,比如我想在第8行设置断点:
(三)练习(通过命令行和IDEA两种方式实现,自己的学号后两位与题目总数取余的结果再加上1就是自己要完成的题号,在IDEA下练习调试程序)
- 实现计算斐波那契数列功能,并进行测试。
代码:
/**
* Created by wang on 2017/3/14.
*/
package cc.openhome;
import java.util.Scanner;
public class fibonacci {
public static void main(String[] args) {
System.out.printf("求几个费式数");
Scanner scanner = new Scanner(System.in);
int n =scanner.nextInt()-;
int[] f=new int[];
f[]=;
f[]=;
if(n == )
System.out.printf("%d %d",f[],f[]);
else if(n == ) System.out.printf("%d %d",f[],f[]);
else if(n >= ){
System.out.printf("%d %d",f[],f[]);
for(int i =;i<=n;i++){
f[i]=f[i-]+f[i-];
System.out.printf(" %d",f[i]);
}
}
}
}测试:

实验体会与总结
本次实验让我明白了动手的意义,我会继续下去。
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 6min | 6.5% |
| 设计 | 20min | 21.7% |
| 代码实现 | 25min | 27.2% |
| 测试 | 11min | 12.0% |
| 分析总结 | 30min | 32.6% |
参考资料
20155317 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉的更多相关文章
- 实验一《开发环境的熟悉》&实验二《固件设计》
20145312&20145338 实验一<开发环境的熟悉>&实验二<固件设计> 合作博客链接:http://www.cnblogs.com/yx2014531 ...
- Java程序设计 实验二 Java面向对象程序设计
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:李海空 学号:20135329 成绩: 指导教师:娄嘉鹏 ...
- 20145206邹京儒《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145206<Java程序设计>实验报告一:Java开发环境的熟悉(Windows+IDEA) 实验内容及步骤 1.使用JDK编译.运行简单的Java程序: 建立实验目录: 在IDEA ...
- 20155215 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155215 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑 ...
- 20155318 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155318 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 (一)命令行下Java程序开发 步骤一(新建文件夹): 打开windows下的cmd → ...
- 20155328 《Java程序设计》实验一(Java开发环境的熟悉) 实验报告
20155328 <Java程序设计>实验一(Java开发环境的熟悉) 实验报告 一.实验内容及步骤 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发: 打开windows ...
- 20145212《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDE)
20145212<Java程序设计>实验报告一:Java开发环境的熟悉(Windows+IDE) 实验内容及步骤 1.命令行下的JAVA程序开发 建立并进入实验目录: 撰写简单的Hello ...
- 20145213《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145213<Java程序设计>实验报告一:Java开发环境的熟悉(Windows+IDEA) 实验要求 使用JDK编译.运行简单的Java程序. 使用IDEA编辑.编译.运行.调试J ...
- 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告
20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...
随机推荐
- HTTP协议图--HTTP 报文首部之首部字段(重点分析)
1.首部字段概述 先来回顾一下首部字段在报文的位置,HTTP 报文包含报文首部和报文主体,报文首部包含请求行(或状态行)和首部字段. 在报文众多的字段当中,HTTP 首部字段包含的信息最为丰富.首部字 ...
- 对volatile不具有原子性的理解
在阅读多线程书籍的时候,对volatile的原子性产生了疑问,问题类似于这篇文章所阐述的那样.经过一番思考给出自己的理解. 我们知道对于可见性,Java提供了volatile关键字来保证可见性.有序性 ...
- poj3718 Facer's Chocolate Dream
题目链接 正解:组合数+$dp$. 今天考试的题,考试的时候感觉自己有点脑残过头了.. 似乎发现了所有$1$其实都是一样的,然后不知道怎么强制每种物品只选一个.. 然后就写了一个所有物品可以选任意个的 ...
- 【[NOI2011]阿狸的打字机】
首先发现这个插入的非常有特点,我们可以直接利用这个特殊的性质在\(Trie\)树上模拟指针的进退 之后得到了\(Trie\)树,先无脑建出\(AC\)机 之后考虑一下如何写暴力 最简单的暴力对于每一个 ...
- urllib库基本使用
#导入urllib库 import urllib.request #打开网址 file=urllib.request.urlopen("http://www.sohu.com/", ...
- PHP-----TP框架----命名空间
TP框架----命名空间 命名空间,起什么作用??? [1]命名空间是一个虚拟的目录,这个文件有可能存在这个电脑里的任何一个地方,但是如果要把这个文件它的命名空间全部写成同一个那么这些文件就相当于在同 ...
- Scrum培训小体会
公司组织Scrum培训. 虽然是针对ScrumMaster这个角色的培训,但更多是基于对Scrum这个敏捷开发实践方法的了解. 回来也有一些感想,记录下来.以后在工作实践中,继续探索.实践.体验.感悟 ...
- linux mysql access denied for user ‘root’@’localhost'(using password:YES)
linux安装完mysql后,使用程序连接报以上错误解决方法,重新设置密码,步骤如下 1.先停掉原来的服务 service mysqld stop 2.使用安全模式登陆,跳过密码验证 mysqld_s ...
- nRF5 SDK for Mesh(四) 源码编译
官方文档教程编译源码: http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk%2Fdita%2Fs ...
- 硬盘分区表知识——详解硬盘MBR
这片文章说得很详细,原文:http://hi.baidu.com/waybq/blog/item/3b8db64bef3dc7f583025c66.html --------------------- ...