文档库 最新最全的文档下载
当前位置:文档库 › Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)

Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)

Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)
Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)

上机实践1初识Java

实验1一个简单的应用程序

1.相关知识点

Java语言的出现是源于对独立于平台语言的需要,即这种语言编写的程序不会因为芯片的变化而发生无法运行或出现运行错误的情况。目前,随着网络的迅速发展,Java语言的优势越发明显,Java已经成为网络时代最重要的语言之一。

Sun公司要实现“编写一次,到处运行”(Write once,run anywhere的目标,就必须提供相应的Java运行平台,目前Java运行平台主要分为下列3个版本。

(1Java SE:称为Java标准版或Java 标准平台。Java SE 提供了标准的JDK开发平台。利用该平台可以开发Java桌面应用程序和低端的服务器应用程序,也可以开发Java Applet 程序。当前成熟的新的JDK版本为JDK 1.6。

(2Java EE:称为Java企业版或Java企业平台。使用J2EE可以构建企业级的服务应用,Java EE平台包含了Java SE平台,并增加了附加类库,以便支持目录管理、交易管理和企业级消息处理等功能。

(3Java ME:称为Java微型版或Java小型平台。Java ME是一种很小的Java运行环境,用于嵌入式的消费产品中,如移动电话、掌上电脑或其他无线设备等。

无论上述哪种Java运行平台都包括了相应的Java虚拟机(Java Virtual Machine,虚拟机负责将字节码文件(包括程序使用的类库中的字节码加载到内存,然后采用解释方式来执行字节码文件,即根据相应硬件的机器指令翻译一句执行一句。J2SE平台是学习掌握Java语言的最佳平台,而掌握J2SE又是进一步学习J2EE和J2ME所必需的。

2.实验目的

本实验的目的是让学生掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序。

3.实验要求

编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,欢迎学习Java”和“We are students”。

4.程序效果示例

程序运行效果如图1.1所示。

5.程序模板

图1.1 简单的应用程序

请按模板要求,将【代码】替换为Java程序代码。

Hello.java

public class Hello {

public static void main (String args[] {

【代码1】 //命令行窗口输出"你好,欢迎学习Java"

A a=new A(;

a.fA(;

}

}

class A {

void fA( {

【代码2】 //命令行窗口输出"We are students"

}

}

6.实验指导

?打开一个文本编辑器。如果是Windows操作系统,打开“记事本”编辑器。可以

通过“程序”→“附件”→“记事本”来打开文本编辑器;如果是其他操作系统,请在指导老师的帮助下打开一个纯文本编辑器。

?按照“程序模板”的要求编辑输入源程序。

?保存源文件,并命名为Hello.java。要求将源文件保存到C盘的某个文件夹中,例

如C:\1000。

?编译源文件。打开命令行窗口,对于Windows操作系统,打开MS-DOS窗口。如

Windows 2000/XP操作系统,可以通过单击“开始”,选择“程序”→“附件”→“命令提示符”打开命令行窗口,也可以单击“开始”,选择“运行”,弹出“运行”

对话框,在对话框的输入命令栏中输入cmd打开命令行窗口。如果目前MS-DOS

窗口显示的逻辑符是“D:\”,请输入“C:”按Enter键确认,使得当前MS-DOS窗

口的状态是“C:\”。如果目前MS-DOS窗口的状态是C盘符的某个子目录,请输

入“cd\”,使得前MS-DOS窗口的状态是“C:\”。当MS-DOS窗口的状态是“C:\”

时,输入进入文件夹目录的命令,例如,“CD 1000”。然后执行下列编译命令:

C:\1000> javac Hello.java

初学者在这一步可能会遇到下列错误提示。

Command not Fond 出现该错误的原因是没有设置好系统变量Path,可参见教材1.3节。

File not Fond 出现该错误的原因是没有将源文件保存在当前目录中,例如

C:\1000,或源文件的名字不符合有关规定,例如,错误地将源文件命名为

“hello.java”或“Hello.java.txt”,要特别注意:Java语言的标识符号是区分大小

初学者在这一步可能会遇到下列错误提示。

Exception in thread “main ”https://www.wendangku.net/doc/6e18577993.html,ng.NoClassFondError 出现该错误的原因是没有设置好系统变量ClassPath ,可参见教材1.3节,或运行的不是主类的名字或程序没有主类。

7.实验后的练习

(1编译器怎样提示丢失大括号的错误。 (2编译器怎样提示语句丢失分号的错误。

(3编译器怎样提示将System 写成system 这一错误。 (4编译器怎样提示将String 写成string 这一错误。 8.填写实验报告

实验编号:101 学生姓名: 实验时间: 教师签字:

实验2 联合编译

1.相关知识点

Java 程序的基本结构就是类,有时源文件可以只有一个类,编译这个源文件将得到这个类的字节码文件。字节码文件在程序运行时动态地加载到内存,然后再由Java 虚拟机解释执行,因此,可以事先单独编译一个应用的程序所需要的其他源文件,将得到的字节码文件和应用程序存放在同一目录中。如果应用程序的源文件和其他的源文件在同一目录中,也可以只编译应用程序源文件,Java 系统会自动地先编译应用程序需要的其他源文件。 2.实验目的

本实验的目的是学习同时编译多个Java 源文件。 3.实验要求

编写4个源文件:

MainClass.java 、A.java 、B.java 和C.java ,每个源文件只有一个类。MainClass.java 含有应用程序的主类(含有main(方法,并使用了A 、B 和C 类。将4个源文件保存到同一目录中,例如C:\1000,然后编译MainClass.java 。

4.程序效果示例

图1.2 只编译主类

程序运行效果如图1.2所示。

5.程序模板

请按模板要求,将【代码】替换为Java程序代码。

MainClass.java

public class MainClass {

public static void main (String args[] {

【代码1】 //命令行窗口输出"你好,只需编译我"

A a = new A(;

a.fA(;

B b = new B(;

b.fB(;

}

}

A.java

public class A {

void fA( {

【代码2】 //命令行窗口输出"I am A" }

}

B.java

public class B {

void fB( {

【代码3】 //命令行窗口输出"I am B" }

}

C.java

public class C {

void fC( {

【代码4】 //命令行窗口输出"I am C"

}

}

6.实验指导

?编译Hello.java的过程中,Java系统会自动地先编译A.java、B.java但不编译

C.java。

类。当虚拟机将Hello.class加载到内存时,

Java解释器调用main(方法开始

main(方法写成:public void

7.实验后的练习

(1将Hello.java编译通过以后,不断地修改A.java源文件中的【代码】,比如,在命令行窗口输出Nice to meet you或Can you need my hand。要求每次修改A.java源文件后,单独编译A.java,然后直接运行应用程序Hello。

(2如果需要编译某个目录下的全部Java源文件,比如C:\1000目录,可以使用如下命令:

C:\1000> javac *.java

请练习上述命令。

8.填写实验报告

实验编号:102 学生姓名:实验时间:教师签字:

实验答案

实验1:

【代码1】System.out.println("你好,欢迎学习Java"; 【代码2】System.out.println("We are students";

实验2:

【代码1】System.out.println("你好,只需编译我"; 【代码2】System.out.println("I am A";

【代码3】System.out.println("I am B";

【代码4】System.out.println("I am C";

自测题

1.Java语言的主要贡献者是谁?

2.下列哪个是Java应用程序主类中正确的main(方法?

(Apublic void main (String args[ ]

(Bstatic void main (String args[ ]

(C)public static void main (String args (D)public static void main (String args[ ] 3.如果 JDK 的安装目录为 D:\jdk,应当怎样设置 path 和 classpath 的值?4.下列哪个是 JDK 提供的编译器?(A)java.exe (B)javac.exe (C)javap.exe (D)javaw.exe 答案: 1.James Gosling 2.D

3.Path=D:\jdk\bin;classpath=D:\jdk\jre\lib\rt.jar;.; 4.B 7 初识 Java 上机实践 1

相关文档