java实验_Java实验报告(实验一)

课程:Java程序设计          班级: 1351

姓名:王玮怡                学号:20135116

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

实验密级:         预习程度:             实验时间:13:00~15:00

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

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

实验目的与要求:

在命令行和Eclipse下编辑、编译、运行、调试简单的Java程序

实验仪器:

名称

型号

数量

PC

1

虚拟机

实验楼

1

一、实验内容:

1、命令行下Java程序开发

2、Eclipse下Java程序开发、调试

二、实验过程:

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

1.打开终端

2.输入cd Code命令进入Code(注意C要大写)目录

3.输入mkdir 20135100 命令建立实验目录,注意目录名是自己的学号,可以使用ls命令或dir命令查看建立的目录情况

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

5.输入gedit Hello.java(注意把代码保存到exp1目录中)

6.输入javac -d . Hello.java命令编译代码,输入java ljp.Hello命令运行 程序。

另外注意:代码中有package时,使用javac编译代码时一定要加-d参数,运行代码时一定要加包名前缀。 注意代码第二行,我们使用到Java类库中的类时,要用import导入相关的类。

8b035d60df0eccb5b1db2a12e93dc81e.png

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

1.在终端窗口中输入eclipse,进入eclipse界面;

2.依次打开“file--new--java project”,在弹出的对话框里的project name中填写HelloJDK,点击“finish”;

3.依次打开“file--new--class”,在弹出的对话框中,packag栏里输入包名:wwy,在Name栏里填写类名HelloJDK,注意下图中的勾选

b99df01802c8cbb64952919f5b527f0d.png

3.根据题目输入代码:

package wwy;

public class HelloJDK {

public static void main(String[] args) {

int i=5;

int j=6;

int sum=add(i,j);

System.out.println(sum);

sum=0;

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

sum+=i;

System.out.println(sum);

}

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

int sum = augend + addend;

return sum;

}

}

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

5.练习调试程序,首先我们通过单击Window->Open Perspective->Debug打开调试视图。

6.调试程序首先要会设置断点和单步运行。

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

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

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

最终结果如下:

b58c4237b23ae6b5efcdace6b6c9e5d1.png

(三)实现Fibonacci数列功能,并进行测试。

代码如下:

package wwy;

import java.util.Scanner;

/*

Fibonacci

*/

public class Fibonacci {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println("Please input this fibonacci n:");

int n = scanner.nextInt();

System.out.println(fibonacciNormal(6));}

public static int fibonacci(int n){

if(n <= 2){

return 1;

}else{

return fibonacci(n-1) + fibonacci(n-2);

}

}

public static int fibonacciNormal(int n){

if(n <= 2){

return 1;

}

int n1 = 1, n2 = 1, sn = 0;

for(int i = 0; i < n - 2; i ++){

sn = n + n;

n1 = n2;

n2 = sn;

}

return sn;

}

}

三、遇到的问题及解决方法

实验(一)

遇到的问题:当文件编写完后,在终端中输入javac -d . Hello.java 总是显示找不到相应文件。

解决方法:不断尝试重新命名,最终发现应该的命名应该是Hello.java。

四、实验收获

通过这次实验,我大致了解了如何使用eclipse编写以及运行java程序。在实验之前通过老师在课堂上的讲解,我基本明白了断点的用处。但是在具体实际操作中,我对如何设置断点的操作还是不太熟练。总的来说这次实验我的收获还是很多的,明白了eclipse的使用,对以后更好地编写java代码还是有很大帮助。在实验三中,由于我对斐波拉切数列的程序有些陌生,所以编写起来有些吃力。但是在查阅相关资料并和同学的交流后,我还是对其更多了一些了解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528398.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java web 文件上传工具类_JavaWeb中实现文件上传的方式有哪些?

上回我们说了下文件下载的方式有哪些&#xff0c;这次我们从不同的环境下简单来说说文件上传的方式有哪些。文件上传的方式Servlet2.5 方式Servlet3.0 方式SpringMVC 方式案例实操Servlet2.5 方式文件上传涉及到前台页面的编写和后台服务器端代码的编写&#xff0c;前台发送文件…

socket connect java_网络编程 – 为什么Java的socket.connect()消耗100%的cpu资源?

我创建了一个线程池并为它提供了50个连接到服务器的任务.所以一旦完成连接,发送一些数据,然后断开连接.它的读取超时设置为5秒(当然是5000长).我甚至将线程池设置为最大大小为1.然后在linux上启动它,然后运行htop(更好的top版本)来检查CPU使用率.我一直在100&#xff05;看到我…

python renamer模块_artellapipe-tools-renamer-以简单的方式重命名DCC对象的工具-Tomas Poveda...

作者:Tomas Poveda### 作者邮箱:tpovedatdgmail.com### 首页:https://github.com/ArtellaPipe/artellapipe-tools-renamer### 文档:None### 下载链接artellapipe-tools-renamerTool to rename DCC objects in an easy way.. image:: https://travis-ci.com/ArtellaPipe/artella…

类库java_Java类库和常用类库介绍

Java类库和常用类库介绍2018-09-20Java类库和常用类库介绍——序作者&#xff1a;zccstJava类库概念&#xff1a;Java的应用程序接口(API)以包的形式来组织&#xff0c;每个包提供了大量的相关类、接口和异常处理类&#xff0c;这些包的集合就是Java的类库包名以Java开始的包是…

python自己重启自己程序_python 自动重启本程序

#!/usr/local/bin/python#-*- coding: UTF-8 -*-#####################################################################import os,time#def close():# print "程序重启&#xff01;&#xff01;&#xff01;&#xff01;"# print time.strftime(%Y.%m.%d-%H.%M.%S…

centos上如何装python_centos如何安装Python3

摘自&#xff1a;https://www.cnblogs.com/Mr-wangxd/p/7028285.htmlLinux下默认系统自带python2.6的版本&#xff0c;这个版本被系统很多程序所依赖&#xff0c;所以不建议删除&#xff0c;如果使用最新的Python3那么我们知道编译安装源码包和系统默认包之间是没有任何影响的&…

gnu.getopt java_c – 用于GNU getopt()的-W选项是什么?

The -W (capital-W) option shall be reserved for vendor options.If optstring contains W followed by a semicolon ( ; ), then -W foo is treated as the long option --foo. (The -W option is reserved by POSIX.2 for implementation extensions.)有人能够以更清晰的方…

java 与python读写文件速度_Python和Java读写文件的对比

博主平时用Python比较多&#xff0c;最近因为工作需要使用Java编程&#xff0c;比较之下&#xff0c;发现Python读写文件真是太方便了&#xff01;Java读写文件非常繁琐&#xff0c;简直让人抓狂&#xff01;Python读写文件的语句读文件with open(readFile, r) as inFile:for l…

java 字节输出流_Java IO详解(三)------字节输入输出流

那么这篇博客我们讲的是字节输入输出流&#xff1a;InputStream、OutputSteam(下图红色长方形框内)&#xff0c;红色椭圆框内是其典型实现(FileInputSteam、FileOutStream)1、字节输出流&#xff1a;OutputStreampublic abstract class OutputStreamextends Objectimplements C…

java 缩略图 库_Thumbnailator:一个高质量Java缩略图开发库

February 24, 2020: Thumbnailator 0.4.11 has been released! See Changes for details.Thumbnailator is now available through Maven!What is Thumbnailator?Thumbnailator is a thumbnail generation library for Java.Why Thumbnailator?Making high-quality thumbnail…

java数据段 静态区_回顾一下基础,关于栈与堆,常量池,静态区

先来张简单的图:1.jpg------------------分割------------------------栈内存:1.操作比较快速.但是为私有.2.线程之间不共享.所以存放一些基本数据类型,局部变量(方法走完就回收了),3.对于引用数据类型的地址引用.堆内存:1.new出来的实例2.成员变量的值(如果是基本数据类型,比如…

java mqtt客户端_java 实现mqtt发送和接收消息客户端具体用法及测试代码

注&#xff1a;客户端代码实现请看我的上一篇1mqtt发送消息发送时不用多讲&#xff0c;每次发送肯定需要运行一次发送消息方法MyMqttClient mqttClient new MyMqttClient();org.junit.Testpublic void testMqtt1() throws InterruptedException, MqttException {final long ti…

java类变量什么时候初始化_Java类变量的初始化时机

先上代码测试类public class MyNumber {public static MyNumber myNumbernew MyNumber(2.8);private static double value20;public double currentvalue;public MyNumber(double number){currentvaluevalue-number;}}里面存放了一些静态变量。调用类double result1 MyNumber.m…

java项目如何更改路径_Java修改eclipse中web项目的server部署路径问题

和MyEclipse不一样&#xff0c;在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的&#xff0c;会发布到工作空间的某个目录&#xff0c;因此无法在外部启动Tomcat来运行Web项目&#xff0c;只有打开Eclipse中的服务器&#xff0c;才能运行Web项目。所以要对Eclipse…

Java中stringbutter_java中string与ButterString的区别

String和StringBuffer的区别&#xff0c;网上资料可以说是数不胜数&#xff0c;但是看到这篇文章&#xff0c;感觉里面做的小例子很有代表性&#xff0c;所以转一下&#xff0c;并自己做了一点总结。在java中有3个类来负责字符的操作。1.Character 是进行单个字符操作的&#x…

java xpdf 转换成html_java将Word/Excel/PDF文件转换成HTML整理

项目开发过程中&#xff0c;需求涉及到了各种文档转换为HTML或者网页易显示格式&#xff0c;现在将实现方式整理如下&#xff1a;一、使用Jacob转换Word,Excel为HTML“JACOB一个Java-COM中间件.通过这个组件你可以在Java应用程序中调用COM组件和Win32 libraries。”首先下载Jac…

mysql 出现 quot_MYSQL 新版出现 Client does_mysql _ 搞代码

mysql 帮助&#xff1a;A.2.3 Client does not support authentication protocolMySQL 4.1 and up uses an authentication protocol based on a password hashing algorithm that is incompatible with that used by older clients. If you upgrade the server to 4.1, attemp…

java开发有日志存表的吗_Java日志信息存库(logback篇)

一、Logback简介Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块&#xff1a;logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-classic完整实现SLF4J A…

java中filehandler_java – 如何配置特定FileHandler的属性

Java日志记录配置文件允许我定义命名记录器的属性,例如name.heikoseeberger.heikotron.level FINEname.heikoseeberger.heikotron.handlers java.util.logging.FileHandler到现在为止还挺好.现在我想配置特定的FileHandler,例如使用特定的输出文件.不幸的是我只知道如何配置已…

android java标准时间_java android中对list的时间进行排序

public class HahaTime { public static void main(String[] args) { /** * 原来的日期 */ List list new ArrayList(); list.add("2014-03-04 22:22:22"); list.add("2014-4-04 22:22:2…