当前位置:文档之家› 高级java实验指导书(1)

高级java实验指导书(1)

高级java实验指导书(1)
高级java实验指导书(1)

高级java程序设计实验指导书

指导老师:王森

重庆理工大学计算机科学与工程学院

目录

第一部分上机实验的目的及要求。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3

1.1 上机实验的目的。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3

1.2 上机实验基本要求。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3

第二部分实验内容。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4 实验1 java集合框架。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。4

实验 2 类型信息与反射。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。7 实验 3 泛型。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10 实验 4 注解。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。13 实验 5 网络。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。16 实验 6 多线程。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。20 实验 7 序列化。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。24 实验 8 WEB服务器开发。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。28

第一部分上机实验的目的及要求

1.1 上机实验的目的

《高级java程序设计》是软件工程专业的一门专业基础课,课程开设的目的就是帮助学生建立面向对象编程的基本思想。通过本课程的学习,使学生在短时间内理解java面向对象编程的基本原则,以及对Java Web编程、java数据库编程、WEB服务器编程有一个基本的了解,并为后继课程打下坚实的理论基础和编程基础。

实验课是本门课程的重要环节。实验内容以验证性实验和设计性实验相结合为主,以综合性实验为辅。实验过程中要求使用JA V A语言独立进行编程和调试。通过实验主要要达到下述目的:

1、加深对面向对象编程思想的理解。

2、熟悉JA V A语言的语言要素,通过大量的验证性实验,巩固学生在理论课上所学的知识点。

3、通过大量的实验编写来提高学生对程序的编写、调试、连接、运行全过程,积累程序调试经验。

4、学习如何系统的设计程序、使学生逐渐建立程序设计的系统观,养成良好的编程习惯和编程风格。

1.2 上机实验基本要求

学生在实验前必须做好上机的各项准备,按教师的要求进行上机实验。具体要求如下:

1、根据实验指导书提前做好上机预习。必须携带相关的源程序上机。程序

可以是由教师布置安排的或是自编的。

自编程序应书写整齐,并经人工检查无误,以提高上机效率。对程序中自己有疑问的地方,应作出记号,以便在上机时给予注意。

2、必须携带教材和相关参考资料上机。

3、调试程序的过程应独立完成。

独立上机是学生独立思维能力独自动手能力的一个重要途径,上机过程中出现的问题,一般应由学生独立处理,不要轻易举手问老师或周围同学。对常见的“出错信息”应尽快熟悉其含义,并在总结经验的基础上迅速排出常见的错误。

4、在程序调试通过运行成功后,应及时做好程序清单和运行结果的记录,实验结束后及时填写实验报告。实验报告应包括如下内容:

(1)实验时间

(2)实验内容

(3)源程序清单

(4)运行结果及分析结论

5、上机过程中严格遵守实验室纪律,养成良好的上机习惯。

第二部分实验内容

实验1 java 集合框架

一、实验目的

1、掌握java 集合框架的层次体系结构

2、掌握规则集、线性表、队列等集合的相关知识。

3、了解java 集合里面各种方法的相关算法,为数据结构后面的章节打好基础。

二、实验内容 1、程序验证题。

(1)输入如下程序,观察输出结果。

(2)输入如下程序,观察输出结果。

2、程序填空题。

public class TestLinkedHashSet { public static void main(String [] args){

Set set = new LinkedHashSet(); set.add("London"); set.add("Paris"); set.add("New York");

set.add("San Francisco"); set.add("Beijing"); set.add("New York");

for (Object element:set){

System.out .println(element.toString().toLowerCase()); } } }

public class TestHashSet {

public static void main(String[] args){ Set set = new HashSet();

set.add("London"); set.add("Paris");

set.add("New York");

set.add("San Francisco");

set.add("New York");

System.out .println(set);

Iterator interatorIterator = set.iterator(); while (interatorIterator.hasNext()){

System.out .print(interatorIterator.next().toUpperCase(); }

} }

(1)输出下面程序的运行结果。

public class TestTreeSet {

public static void main(String []args){

Set set = new HashSet();

set.add("London");

set.add("Paris");

set.add("New York");

set.add("San Francisco");

set.add("Beijing");

set.add("New York");

TreeSet set2 = new TreeSet(set);

System.out.println("Sorted tree set: "+set2);

System.out.println("first(): "+set2.first());

System.out.println("last(): "+https://www.doczj.com/doc/f62929783.html,st());

System.out.println("headSet(): "+set2.headSet("New york"));

System.out.println("tailSet(): "+set2.tailSet("New york"));

System.out.println("lower: "+set2.lower("P"));

System.out.println("higher: "+set2.higher("P"));

System.out.println("floor: "+set2.floor("P"));

System.out.println("ceiling: "+set2.ceiling("P"));

System.out.println("pollFirst: "+set2.pollFirst());

System.out.println("pollLast: "+set2.pollLast());

System.out.println("new set: "+set2);

}

}

(1)————————

(2)输出下面程序的运行结果。

Public class Test{

Public static void main(String [] args){

Map map = new LinkedHashMap();

map.put("123","john Smith");

map.put("111","great Smith");

map.put("123","steve yao");

map.put("222","steve yao");

System.out.println("(1)"+map);

System.out.println("(2)"+new TreeMap(map));

}

}

(2)__________________

三、根据下面要求编写程序

1、编写一个程序,读取一个java源代码文件,然后报告该文件中关键字的个数。从命令行传递这个java源文件。

2、编写一个程序,从文本文件读取单词,并按字母的升序显示所有的单词(可以重复),文本文件被作为命令行参数传递。

四、实验结果

写实验报告。内容包括:

1、习题的运行结果,源程序。

2、程序调试中出现的错误提示。(英文、中文对照)

3、若有没通过的程序,分析原因。

五、选做题目

1、写出Comparable和Comparator 两个接口的不同之处,以及各自的方法。

2、编写一条语句,找出由可以比较的对象构成的数组中的最大元素。

3、用UML图描述HashMap、LinkedHashMap、TreeMap。

实验2 类型信息与反射

一、实验目的

1、了解类型信息的基本概念、类型信息的存储、类型信息的加载以及类型信息的表示。

2、了解什么是反射、为什么需要反射以及深入反射机制。

3、深入了解Class类,通过Class对象实现反射机制。

4、了解代理模式以及如何实现动态代理。

二、实验内容

1、验证实验

(1)输入如下程序,编译看在bin目录下有无一个与此类同名的.class 文件。

Public class Person{

}

(2)输入如下程序,编译后看在bin目录下会产生多少个.class文件,这些文件名的命名方式是怎样的?

Public class Person{

class Tool{

}

interface Communication{

}

}

(3)输入如下程序,编译并运行写出输出结果。

public class Bootstrap {

static{

System.out.println("Bootstrap prepare!");

}

public static void main(String[] args) {

ClassLoader loader = Bootstrap.class.getClassLoader();

System.out.println(loader);

System.out.println(loader.getParent());

System.out.println(loader.getParent().getParent());

2、程序填空题

(1)如下程序,利用反射机制在Bootstrap 中获得Person 类的构造方法。请填写缺失代码。

(2)如下代码,利用反射机制在Bootstrap 中获得Person 类的方法。请把缺失的代码补全。

3、根据下面的要求编写程序。

public class Person {

public Person(){}

public Person(String name){}

public Person(String name,int age){} protected Person(boolean sex){}; private Person(Date birthday){};

}

public class Bootstrap { public static void main(String[] args) throws SecurityException,

NoSuchMethodException { Class clazz = Person.class; ———————————— ———————————— ———————————— ———————————— } }

public abstract class Person { public void speak(){}; protected void useTool(){}; private void useTool(String toolName){}; public void eat(String food){}; public static void listen(){}; protected abstract void listen(String destination); }

public class Bootstrap { public static void main(String[] args) throws SecurityException,

NoSuchMethodException { Class clazz = Person.class; —————————— —————————— —————————— } }

(1)创建Person类,Person的属性有:

Strng name 姓名

String sex 性别

Integer age 年龄

String idNo 身份证号

Boolean isMerried 是否已婚

请生成相应的getter、setter方法,并创建两个构造方法:Person(),Person(String idNo),把Person编译成.class文件。请通过反射技术,为Person生成相应的.java代码,java代码中的方法的方法体为空,即方法内部代码不用生成。请注意生成的java代码的格式。

(2)请为第1题目中Person类创建实例(对象),并为每个属性赋值,然后采用反射技术,把创建的Person实例的属性值存入文本文件中,文本文件的格式为:

idNo = 5122245566

name = 张小平

age = 23

sex = Male

isMerried = true

三、实验结果

写实验报告。内容包括:

1、习题的运行结果,源程序。

2、程序调试中出现的错误提示。(英文、中文对照)

3、若有没通过的程序,分析原因。

四、选做题目

(1)请采用反射技术为一个的类的所有私有属性生成相应的getter、setter 方法。

(2)思考Java的动态代理是怎么实现的?请试图设计动态代理功能,并实现核心的代码。(提示:如果在运行时能够把.java的文件编译成.class文件,是不是问题就可以解决)

(3)编写一个实现IOC功能的简单Spring框架并编写测试程序。

(4)创建代理类PersonProxy,PersonProxy的在代理Person类的所有setter 方法时,把方法的调用时间、方法名称写入到文本文件中,每一行日志的格式为:时间:2012-09-01 23:34:24;方法名称:setName;参数:张小平

实验3 泛型

一、实验目的

1、了解泛型的基本概念以及为什么要使用泛型。

2、了解泛型类、泛型方法、泛型接口、泛型数组以及泛型的继承。

3、学习如何利用泛型写出更加严谨的程序。

二、实验内容

1、验证实验

(1)输入如下程序观察编译器会报什么错误。

public class GenericTest {

public static void main(String[] args) {

List list1 = new ArrayList();

list1.add(new Integer(1));

list1.add(new String("测试"));

}

}

(2)输入如下程序,观察输出结果是什么?

public class Person {

protected T t;

public Person(T t){

this.t = t;

}

public String toString(){

return "参数的类型是:" + t.getClass().getCanonicalName();

}

(3)输入如下程序,观察输出结果是什么?

public class GenericTest {

public static void main(String[] args) throws Exception{

Class clazz = Integer.class;

System.out.println(clazz.getCanonicalName());

clazz = String.class;

System.out.println(clazz.getCanonicalName());

clazz = Date.class;

System.out.println(clazz.getCanonicalName());

}

}

2、程序填空

(1)如下程序,在GenericTest类中创建一个Interger类型的Person 对象。并输出person对象的类型名称。

public class Person {

protected T t;

public Person(T t){

this.t = t;

}

public String toString(){

return "参数的类型是:" + t.getClass().getCanonicalName();

}

}

public class GenericTest {

public static void main(String[] args){

————————————

————————————

}

(2)如下代码,怎么填才能使其正确

ArrayList dates___=new ArrayList___();

dates.add(new Date);

Date date = dates.get(0) ;

三、根据下面的要求编写程序

(1)设计一个泛型堆栈类GenericStack,并编写一个测试程序。

(2)使用泛型二分查找法实现下面的方法。

Public static >int binarySearch(E[] list,E key)

(3)实现下面的方法,返回数组中的最大元素

Public static >E max(E[]list)

四、实验结果

写实验报告。内容包括:

1、习题的运行结果,源程序。

2、程序调试中出现的错误提示。(英文、中文对照)

3、若有没通过的程序,分析原因。

五、选做题目

(1)使用泛型选择排序法实现下面的方法

Public static >void selectionSort(E[] list)

(2)使用泛型插入排序法实现下面的方法

Public static >void insertionSort(E[] list)

(3)编写一个泛型方法返回二维数组的最大元素

Public static >E max(E[][] list)

(4)请思考Java为什么在编译时要擦除泛型信息,如果不擦除泛型信息,有什么样的优点和缺点?

实验4 注解

一、实验目的

1、了解注解的基本概念和为什么使用注解

2、掌握常见的注解使用方法以及如何自定义注解

3、了解注解实体映射与如何解析注解实体

4、学会如何利用注解解决实际编程中的问题

二、实验内容

1、程序验证题

(1)输入如下程序,看编译器报什么警告。

public class Person {

private String name;

public void speak(String message){

List list = new ArrayList();

System.out.println("Speak: " + message);

}

}

(2)输入如下程序,看程序结果是什么?

class A {

private String id;

A(String id){

this.id = id;

}

@Deprecated

public void execute(){

System.out.println(id);

}

public static void main(String[] args) {

A a = new A("a123");

a.execute();

}

}

2、程序填空题

(1)要定义一个作用在属性上、信息保留到程序运行时的注解ID。请按要求填完程序。

——————————

——————————

public @interface ID {

(2)如下程序,要为注解ID赋一个值“personID”,请根据题目要求填完程序。

@Target(ElementType.FIELD)

@Retention(RetentionPolicy.RUNTIME)

public @interface ID {

public String value();

public String description() default "";

}

public class Person {

————————

}

三、根据下面要求编写程序

(1)创建Person类,Person的属性有:

Strng name 姓名

String sex 性别

Integer age 年龄,

String idNo 身份证号

Boolean isMerried 是否已婚

请生成相应的getter、setter方法。请编写注解@Label,表示所注解对象的中文名称,请把@Label注解标注在Person类和Person的每个属性上面。请编写PersonInput类,负责提示录入人员的相关属性,提示必须是注解@Label所标注的中文名称。请编写PersonDisplay,负责显示人员信息,显示时的属性名称必须为注解@Label所标注的中文名称,PersonInput类与PersonDisplay类实现了共同的接口PersonAction,接口PersonAction 有方法process,方法process的签名为:public Person process(Person person);

(2)在第一题目的基础上,编写注解@Column,属性有Label 表示类的属性的显示名称,

Nullable 表示是否允许属性值为空,MaxLength 表示文本属性的最大长度,MinLength表示文本属性的最小长度,MaxValue表示最大值,MinValue表示最小值,把注解@Column加在Person类的每个属性上,在输入Person时根据注解@Column的配置进行校验。第一题的@Label只标注在类上。请实现Person的增、删、改、查功能。

四、实验结果

写实验报告。内容包括:

1、习题的运行结果,源程序。

2、程序调试中出现的错误提示。(英文、中文对照)

3、若有没通过的程序,分析原因。

五、选做题目

(1)请思考:注解还可以应用到哪些场景?

(2)请设计一个注解,用于标注类的方法可以调用的权限(即标注方法只有在用户登录后,有指定权限的人员才可以调用),结合第三章的动态代理,在方法调用时进行安全检查。

实验5 网络

一、实验目的

1、了解网络协议的基本概念和区分OSI模型和TCP/IP模型的不同点。

2、熟悉输入输出流、以及常见的流处理工具。

3、掌握基于TCP编程和UDP编程的基本步骤和对相关核心类的了解。

4、掌握简单的应用服务器工作原理,为后面Web服务器开发打好基础。

二、实验内容

1.验证实验。

(1)输入如下程序,观察输出结果。

public class NetTest {

public static void main(String[] args) throws Exception {

InetAddress address = InetAddress.getByName("https://www.doczj.com/doc/f62929783.html,");

System.out.println("========获取新浪的IP地址========");

System.out.println(address.toString());

InetAddress[] addresses = InetAddress.getAllByName("https://www.doczj.com/doc/f62929783.html,");

System.out.println("======获取新浪的IP地址列表=======");

for(InetAddress add : addresses){

System.out.println(add.toString());

}

}

(2)输入如下程序,观察输出结果。

public class NetTest {

public static void main(String[] args) throws Exception{

InetAddress address = InetAddress.getLocalHost();

if(address instanceof Inet4Address){

System.out.println("sd");

address = (Inet4Address)address;

}

System.out.println(address.toString());

}

}

2.程序填空题。

1、如下程序,是基于TCP/IP编程的客户端和服务端的程序。请填完空缺代码

public class Client {

public static void main(String[] args) throws Exception{

Socket socket = new Socket("127.0.0.1",888);

public class Server {

public static void main(String[] args) throws Exception{

ServerSocket server = new ServerSocket(888);

————————————

InputStreamReader reader = new InputStreamReader(socket.getInputStream());

BufferedReader buffer_reader=new BufferedReader(reader);

PrintWriter writer=new PrintWriter(socket.getOutputStream());

String request = buffer_reader.readLine();

System.out.println("Client say:" + request);

String line="Hello,too!";

writer.println(line);

writer.flush();

writer.close();

buffer_reader.close();

服务端

————————

server.close();

}

}

三、根据下面要求编写程序

1.请分别采用TCP、UDP协议编程实现一对一的文件上传。

2.编写一对多的聊天程序,程序由服务器和客户端两部分构成,两部分的

交互方式如下:

a. 客户端发送命令: 给服务器端注册用户,

服务器端如果允许注册,则返回消息:

ok” />,否则返回消息:

message=”” />

b. 客户端发送命令: 给服务器端进行登录, 服

务器端如果允许登录,则返回消息:

ok” />,否则返回消息:

message=”” />;

c. 客户端发送命令:

this is a test”> 给服务器端,服务器端收到命令后返回消息:

d. 服务器向指定客户端发送命令:

message=”this is a test”>,如果客户端收到消息,则返回:,如果message命令中的 from 属性为空,则表示由服务器发送的消息。

e. 客户端发送命令: 给服务器端进行注销登

录, 服务器端如果允许注销登录,则返回消息:

state=”ok” />,否则返回消息:

error” message=”” />;

程序可以采用GUI,也可采用命令行的方式。

四、实验结果

写实验报告。内容包括:

1、习题的运行结果,源程序。

2、程序调试中出现的错误提示。(英文、中文对照)

3、若有没通过的程序,分析原因。

五、选做习题

(1)请分别采用TCP、UDP协议编程实现一对多的文件上传。

(2)请编写程序把页面:https://www.doczj.com/doc/f62929783.html,/Consortium/Member/List中的“Current Members”的名称抽取出来,存入文本文件中。(也可以下载任意指定页面,并抽取相关的内容)

(3)模仿QQ,设计实现一个聊天工具。

实验6 多线程

一、实验目的

1、理解线程概念和定义。

2、掌握创建、管理和控制Java 线程对象的方法,包括创建Java 线程对象、 改 变线程状态、设置线程优先级以控制线程调度等方法。

3、了解并执行的多线程间存在的各种不同关系,掌握实现线程互斥和线程同步的方法。

二、实验内容

1、程序验证

(1)输入以下程序,观察输出结果。

(2)输入如下程序,观察输出结果。

(3)

class MyThread extends Thread{

public int x = 0; public void run(){

System.out.println(++x); }

}

class R implements Runnable{

private int x = 0; public void run(){

System.out.println(++x);

} }

public class Test {

public static void main(String[] args) throws Exception{

for(int i=0;i<10;i++){ Thread t = new MyThread();

t.start(); } Thread.sleep(10000); R r = new R(); for(int i=0;i<10;i++){ Thread t = new Thread(r); t.start(); } } }

ublic class ThreadDemo {

public static void main(String[] args) { Thread t = new TestThread(); // t.setDaemon(true);

JAVA实验指导书 作业

第Ⅰ部分:实验指导 实验1:Java开发环境J2SE 一、实验目的 (1)学习从网络上下载并安装J2SE开发工具。 (2)学习编写简单的Java Application程序. (3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。 二、实验任务 从网络上下载或从CD-ROM直接安装J2SE开发工具,编写简单的Java Application程序,编译并运行这个程序。 三、实验内容 1.安装J2SE开发工具 Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从https://www.doczj.com/doc/f62929783.html,上进行下载。安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:\j2sdk1.4.1_03目录下。教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。 2.安装J2SE源代码编辑工具Edit Plus 教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java原程序的常用命令的用法。 3.编写并编译、运行一个Java Application程序。 创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。 4.编译并运行下面的Java Application程序,写出运行结果。 1:public class MyClass { 2:private int day; 3:private int month;

4:private int year; 5:public MyClass() { 6:day = 1; 7:month = 1; 8:year = 1900; 9:} 10:public MyClass(int d,int m,int y) { 11:day = d; 12:month = m; 13:year = y; 14:} 15:public void display(){ 16:System.out.println(day + "-" + month + "-" + year); 17:} 18:public static void main(String args[ ]) { 19:MyClass m1 = new MyClass(); 20:MyClass m2 = new MyClass(25,12,2001); 21:m1.display(); 22:m2.display(); 23:} 24:}

《Java程序设计》实验指导书_2015

《Java程序设计》实验指导书 实验一Java开发环境的安装与配置 一、实验目的 1.掌握JDK的安装步骤(有条件的话可以在Unix系统下安装)。 2.理解环境变量PATH, CLASSPATH的作用,以及它们的设置方法(Win XP、 WIN7、WIN8、Linux下的不同设置方法)。 3.熟悉TextPad(或JCreator)编辑环境,编写简单的Application程序,并编 译和解释执行。 4.记录编译和执行Java程序当中的系统错误信息提示,并给出解决办法。 二、实验内容 1.下载安装新版本的JDK。 2.设置环境变量PATH, CLASSPATH, 使得Java程序能正确编译和执行。 3.在Textpad(或JCreator)环境下编写一个HelloWorld.java程序,在DOS 提示符下编译并执行这个程序。 4.编写一个类A,它位于包a中,保存到A.java中,再编写一个类B,它位于包b中,保存到B.java中。在类B中实例化类A的一个对象。分别编译类A和类B。 5.实验时,在计算机中建立分别如下目录:D:\学号\src和D:\学号\class,分别用来放置Java源文件和编译后的字节吗文件(注:每位同学分别用自己的学号建立目录)。 三、思考题 1.什么是JVM,它的作用是什么? 2. 如何理解PATH和CLASSPATH,如何设置它们。

实验二类的封装、继承、多态 一、实验目的 1.复习、理解OOP的三大特征——封装、继承和多态。 2.学会使用Java编写简单的类。理解类的属性和方法。 3.掌握关键字private, protected, public的作用,掌握静态类,内部类的概念。 4.掌握多态的概念。 二、实验内容 1.分别编写两个类Point2D,Point3D来表示二维空间和三维空间的点,使之满足下列要求: (1)Point2D有两个整型成员变量x, y (分别为二维空间的X,Y方向坐标),Point2D的构造方法要实现对其成员变量x, y的初始化。 (2)Point2D有一个void型成员方法offset(int a, int b),它可以实现Point2D 的平移。 (3)Point3D是Point2D的直接子类,它有有三个整型成员变量x,y,z (分别为三维空间的X,Y,Z方向坐标),Point3D有两个构造方法:Point3D(int x,int y,int z)和Point3D(Point2D p,int z),两者均可实现对Point3D的成员变量x, y,z的初始化。 (4)Point3D有一个void型成员方法offset(int a, int b,int c),该方法可以实现Point3D的平移。 (5)在Point3D中的主函数main()中实例化两个Point2D的对象p2d1,p2d2,打印出它们之间的距离,再实例化两个Point3D的对象p3d1,p3d2,打印 出他们之间的距离。 提示:https://www.doczj.com/doc/f62929783.html,ng.Math.sqrt()方法 2.创建一个数组,随机生成Point2D或者Point3D的对象放于其中。最后依次调用数组中每个对象的“打印方法”,显示数组中存储的对象是什么。 提示:https://www.doczj.com/doc/f62929783.html,ng.Math.random()方法或者java.util.Random类 三、思考题 1.什么是类的多态性。

Java实验指导书

《Java程序设计》课程实验指导书软件学院网络工程系

实验一 Java开发环境的安装与配置,熟悉Java程序 结构 一、实验目的: 1. 掌握JDK的安装步骤。 2. 理解环境变量PATH, CLASSPATH的作用,以及它们的设置方法。 3. 熟悉Editplus(或TextPad,JCreator)编辑环境,编写简单的 Application程序和Applet程序,并编译和执行。 二、实验内容: 熟悉JDK的安装和配置,学习如何编写并运行简单的Application程序和Applet程序(能输出一条简单的问候信息); 三、实验要求: 1. 能正确地安装JDK 2. 熟悉环境变量PATH, CLASSPATH设置方法,熟悉编辑环境 3. 调试程序、编译,运行后得到正确的结果 4. 写出实验报告,要求记录编译和执行Java程序当中的系统错误信息提示, 并给出解决办法。 四、实验步骤: 1.从https://www.doczj.com/doc/f62929783.html, 上下载最新版本的JDK,并安装。 2.设置环境变量PATH, CLASSPATH, 使得Java程序能正确编译和执行。 3.在Editplus(或JCreator ,Textpad)环境下编写一个HelloWorld.jav a程序, (1)在主方法static public void main(String[ ] args)中调用System. out.println()方法,使程序输出一条问候信息; (2) 编译运行程序,观察运行情况和输出结果。(使用JDK环境,调用 javac.exe和java.exe编译和执行程序) 4.在Editplus(或JCreator ,Textpad)环境下编写一个 HelloWorldApplet.java程序。 (1)在public void paint(Graphics g)方法中调用g.drawString()方法,使

《java程序设计》实验指导书(完整)

实验一 Java实验环境的建立一、实验目的 1.掌握Java编程环境的搭建过程; 2.掌握Jcreator pro软件的使用方法; 3.能使用Java doc文档。 二、实验内容 1.下载并安装,配置JDK环境变量; 2.下载Javadoc压缩包并解压在JDK安装路径下; 3.下载Jcreator pro 并安装和配置使用环境; 4.使用实验环境运行书中实例代码,在屏幕上输出“Hello Java”字符串。 ①Java application程序代码如下: public class HelloJava { public static void main(String args[]) { "Hello Java!"); } } ②Java applet程序代码如下: import .*; public class Hello extends { public void paint(Graphics g) { ("Hello!",30,30); } } 三、试验要求 1、预习试验内容并写出上机报告。 2、实验中出现的问题及实验体会。

一、实验目的: 1.输入、输出操作实现原理和方法 2.掌握程序流程控制的实现方法 3.掌握数组的定义和操作方法 二、实验内容 1.计算 Result=1!+2!+3!+ (10) public class TestJieC{ p ublic static void main(String arg[]){ long result=1; for(int i=1;i<=10;i++) { result=i*result; result+=result; } " "+result); } } 2.计算1---50之间所有素数的和。 public class Test{ p ublic static void main(String args[]){ int count = 0; for(int i = 2;i<=50;i++){ for(int j = 2;j<=i;j++){ if(i>j){ if(i%j == 0){ count++; } } } if(count==0){

java实验指导书

实验指导书 (实验报告书写规范) 1.拿到实验报告后,先填写封面: 2012-2013学年第一学期 实验室名称:兰州工业学院计算机一体化教室 课程名称:《Java语言程序设计》 指导教师:杜叔强 学号:(只写后2位) 2.接着填写目录,即实验项目名称 3.下面是每次做实验后应完成的内容: 每一页正文最上边写上实验时间:(例如:2011-9-22)同组者:(这个不用填写)实验题目: 一、实验目的 二、实验环境:JDK 三、实验内容 四、实验结果 说明:实验结果中给出主要代码及运行数据和结果,每次实验报告3-4页 五、实验总结: 4.其他要求 每个实验项目另起一页!!!! 实验报告册使用黄色厚本规格!!!

(学校规定,十个学时以上实验用厚本,十个学时以内用薄本。)

实验一熟悉Java运行环境 一、实验目的 1.熟悉JDK开发环境 2.了解Java Application的程序结构和开发过程 3.了解Java Applet程序的开发过程并编写第一个Java Applet程序 4.学习编写简单的HTML文件配合Java Applet使用 二、实验环境:JDK1.5 三、实验内容 四、实验结果 五、实验总结:

实验二 Java的基本数据类型 一、实验目的 1.熟悉Java的基本数据类型; 2.会准确操作字符型类型,并掌握强制转换的操作; 二、实验环境与地点 1.实验环境: JDK1.6+Ultraedit 2.实验地点: 软件工程系一体化教室 三、实验内容与步骤 1. 定义一个类,类中包含主程序,在主程序中进行如下定义: (1)定义一个常量,名称为MAXVALUE,赋值为1000; (2)定义一个变量,名称为maxValue,赋值为500; 2. System.out.println(“你好”);可输出字符串,也可以使用System.out.println( )输出变量或表达式的值,只需使用并置符号“+”将变量、表达式或一个常数值与一个字符串并置即可,如: System.out.println(“”+x);System.out.println(“:”+123+“大于”+122);等。上机调试下列程序,注意观察结果,特别注意System.out.print( )和System.out.println( )的区别。 public class OutputData { public static void main(String args[]) { int x=234,y=432; System.out.println(x+"<"+(2*x)); System.out.print("我输出结果后不回车"); System.out.println("我输出结果后自动回车到下一行"); System.out.println("x+y= "+(x+y)); System.out.println(" "+x+y+"=234432"); }} 3. 定义一个类,其中包含主程序,在主程序中进行如下操作: (1)输出‘h’+1; (2)输出‘7’+1; 4. 定义一个类,在主程序中加入如下语句: int x = 8; byte b = 127; b = x;

java实验指导书 学生用李伟

实验一、安装JDK并熟悉java的运行环境实验二、基本语法练习 实验三、面向对象编程实验(4) 实验四、异常处理实验 实验五、小应用程序实验 实验六、图形图像实验 实验七、GUI(图形用户接口)实验(4) 实验八、多线程实验 实验九、输入输出流实验(4) 实验十、数据库应用实验(4)

实验一、安装JDK并熟悉java的运行环境 一、实验目的 熟悉JA V A的运行环境及学习简单的编程。 二、预习内容 安装工具软件的基本方法。 三、实验设备与环境 装有JA V A语言工具软件(Eclipse )的微机若干 四、实验内容 安装Eclipse及JA V A的核心编译程序J2SDK。 1、打开Eclipse的安装盘安装Eclipse。 2、在相同目录下安装J2SDK。 3、打开Eclipse软件对J2SDK文件进行配置。 4、编写一应用程序,在屏幕上显示“HELLO WORLD”和爱心标志。 Pulic class Hello { public static void main(String args[]) { //在屏幕上显示“HELLO WORLD”和爱心标志 } } 5、编写一小程序实现上述功能:在屏幕上显示“HELLO WORLD”和爱心标志。 实验结果 五、注意事项 ⒈认真填写实验报告 ⒉遵守实验室各项制度,服从实验指导教师的安排 ⒊按规定的时间完成实验 六、说明 本次实验建议学时数2学时 七、实验总结与体会

实验二、基本语法练习 一、实验目的 ⒈熟悉Java的基本语法 ⒉编写应用程序接收命令行参数 ⒊编写应用程序接收用户从键盘的输入 ⒋掌握字符串与数组的基本方法 二、预习内容 java编程的基本结构 三、实验设备与环境 装有JA V A语言工具软件(Eclipse )的微机若干 四、实验内容 ⒈编写一个应用程序求若干个数的平均数,原始数字要求从命令行输入。应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。 (1)编辑Average.java。 class Average { public static void main(String args[ ]) { double n,sun=0; for (int l=0;l

Java 2实用教程(第三版)实验指导与习题解答

Java 2实用教程(第三版)实验指导与习题解答 清华大学出版社 (编著耿祥义张跃平) 实验模版代码及答案 建议使用文档结构图 (选择Word菜单→视图→文档结构图)

上机实践1 初识JA V A (4) 实验1一个简单的应用程序 (4) 实验2一个简单的J A V A A PPLET程序 (4) 实验3联合编译 (5) 上机实践2 基本数据类型与控制语句 (6) 实验1输出希腊字母表 (6) 实验2回文数 (7) 实验3猜数字游戏 (9) 上机实践3 类与对象 (10) 实验1三角形、梯形和圆形的类封装 (10) 实验2实例成员与类成员 (13) 实验3使用PACKAGE语句与IMPORT语句 (15) 上机实践4 继承与接口 (17) 实验1继承 (17) 实验2上转型对象 (20) 实验3接口回调 (22) 上机实践5 字符串、时间与数字 (24) 实验1S TRING类的常用方法 (24) 实验2比较日期的大小 (25) 实验3处理大整数 (26) 上机实践6 组件及事件处理 (27) 实验1算术测试 (27) 实验2信号灯 (30) 实验3布局与日历 (32) 上机实践7 组件及事件处理2 (36) 实验1方程求根 (36) 实验2字体对话框 (39) 实验3英语单词拼写训练 (42) 上机实践8 多线程 (46) 实验1汉字打字练习 (46) 实验2旋转的行星 (48) 实验3双线程接力 (52) 上机实践9 输入输出流 (55) 实验1学读汉字 (55) 实验2统计英文单词字 (58) 实验2读取Z IP文件 (62)

上机实践10 JAV A 中的网络编程 (63) 实验1读取服务器端文件 (63) 实验2使用套接字读取服务器端对象 (65) 实验3基于UDP的图像传输 (68) 上机实践11 数据结构 (72) 实验1扫雷小游戏 (72) 实验2排序与查找 (77) 实验3使用T REE S ET排序 (78) 上机实践12 JAV A SWING (80) 实验1JL AYERED P ANE分层窗格 (80) 实验2使用表格显示日历 (81) 实验3多文档界面(MDI) (84)

java实验指导书

实验一熟悉Java程序开发环境 一、实验目的及要求 (1)了解和使用j2sdk1.6.0(JDK)。 (2)熟悉JDK集成环境的基本命令、功能和基本用法,并学会配置PATH等环境变量。 (3)学习并熟练掌握使用JDK环境进行Java程序开发的全过程(包括:源程序的编辑、编译、调试、运行和结果查看)。 二、实验学时 6学时 三、实验任务 (1)安装j2sdk1.6.0,设置环境变量PATH和CLASSPATH。 1)下载JDK 为了建立基于SDK的java运行环境,需要先下载sun的免费SDK软件包。SDK包含了一整套开发工具,其中包含对编程最有用的是Java编译器、Applet查看器和Java解释器。在浏览器中输入https://www.doczj.com/doc/f62929783.html,进入sun公司官方网站页面。在页面右边“Popular Downloads”栏中可看到最新版的JDK软件包(JDK1.6),并下载。 2)安装SDK 运行下载的“jdk-6u1-windows-i586-p.exe”软件包,在安装过程中可以设置安装路径及选择组件,默认的组件选择是全部安装,安装成功后,其中bin文件夹中包含编译器(javac.exe)、解释器(java.exe)、Applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,demo文件夹中包含开源代码程序实例。 3)JDK中主要文件夹和文件 安装成功后,d:\java\jdk1.6中bin文件夹中包含编译器(javac.exe)、解释器(java.exe)、Applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,sample文件夹包含开源代码程序实例,src压缩文件中包含类库开源代码。 设置环境变量 JDK中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。以Windows XP 为例说明设置过程。 右击桌面“我的电脑”图标,选择“属性”菜单

java实验报告实验3答案

实验三熟悉常用java工具包并运用编程 实验目的: 本实验旨在巩固同学们对上课所讲java.util工具包中Collection,List,Set,Map加深理解,对其用法编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。 实验内容: 本实验的内容为:用Collection,List,Set,Map来存储数据,并进行排序,任何用Iterator,ListIterator或者Enumeration来打印其结果(按顺序和降序排列打印)。共分为四部分部分(前三部分必做,如果选第四个,前三个可以不做。。): (1)按顺序把1,10,5,7,6,2,9,20,14,存入到List中(注:允许自己自定义任何数),并对其进行排序,打印其升序和降序排列的结果。然后再向List中位置为第四位插入数35看看会有啥结果?再向List中插入字符串“ddy”,试猜想排序是否会出错?然后看看运行结果是啥? 程序: import java.util.*; public class SY3 { public SY3() { List list=new ArrayList(); list.add(1); list.add(10); list.add(5); list.add(7); list.add(6); list.add(2); list.add(9); list.add(20); list.add(14); list.add(35); list.add("ddy"); System.out.println("原序列:"); for(int i=0;i<=list.size()-1;i++) { System.out.println(list.get(i)); } System.out.println("新序列"); for(int i=0;i<=list.size()-1;i++) {

java实验指导书

实验一java开发环境及语言基础 实验目的 (1)确保正确配置java开发环境。 (2)了解javac和java命令的使用。 (3)熟悉java中的运算符。 (4)掌握条件语句和循环语句的使用。 (5)掌握通过命令行参数接受数据。 (6)掌握用Scanner类接受数据。 实验内容 (1)在控制台中输入java命令,查看输入结果。 (2)编写一个java程序,计算半径为3.0的圆周长和面积并输出结果。 (3)求a+aa+aaa+...+a...a(n个)的和,其中a为1~9之间的整数。例如,当a=3、n=4时,求3+33+333+3333的和。 (4)给定一个正整数m,统计其位数,分别打印每一位数字,再按照逆序打印出各位数字。(5)用Scanner类方法输入三角形三边求三角形面积。 实验要求 (1)JDK的安装及配置。 (2)在DOS及eclipse下编辑、编译运行第一个java程序:hello world。 (3)求圆周长和面积用方法实现,主函数调用。 (4)从命令行输入1~9之间的整数a,当所求的和大与106时,输出相应的a值及所求的和值。 (5)用Scanner类的方法输入正整数m,m的值不应该超过99999,否则给出错误信息。应引入包:import java.util.Scanner,然后在需要的方法中实例化对象:Scanner sc = new Scanner(System.in),最后调用对象的next方法,如int n=nextInt(),接受整数。 实验二数组 实验目的 (1)掌握数组的定义和使用方法。 (2)熟悉数组的排序、查找的方法。 (3)巩固循环的使用。 实验内容 (1)使用for循环,将二维数组的行与列互换,即完成矩阵的转置。 (2)编写数组的排序程序。 (3)编写杨辉三角。 实验要求 (1)编写一个界面1 选择排序2 冒泡排序3插入排序4 快速排序5 退出 当选择1、2、3、4、5的时候完成相应的功能。 (2)杨辉三角形状为等腰三角形 实验三字符串 实验目的 (1)掌握正则表达式的使用。 (2)熟悉java的字符串。

……java训练题二答案

训练题二 一、选择题 1.下列哪种类成员修饰符的变量只能在本类中被访问?( D ) A. protected B. public C. default D. private 2.在java语言的哪一个包是编译器自动导入的?( A ) A. https://www.doczj.com/doc/f62929783.html,ng B. java.awt C. jva.io D. java.applet 3.给出下面的程序代码: class Test3{ private float a; public static void m() { // … } } 如何使成员变量a被方法m()直接访问?( C ) A.将private float a改为protected float a B.将private float a改为public float a C.将private float a改为static float a D.将private float a改为float a 4.已知有下面的类说明: public class Test4 { private float f=1.0f;. int m=12; static int n=1; public static void main(String[] args) { Test4 e=new Test4(); } } 在main()方法中,下面哪个的使用是正确的( A )? A. e.f B. this.n C. Test4.m D. Test4.f 5.有一个类A,下面为其构造函数的声明,其中正确的是( B )。 A. void A(int x){ … } B. A(int x) { … } C. a(int x){ … } D. void a(int x){ … } 6.在下面的程序源代码文件Test6.java中,哪个是正确的类的定义?( B ) A.public class test6{ B. public class Test6{ public int x=0; public int x=0; public test(int x) public Test6(int x) { this.x=x; { this.x=x; } } } } B.class T1{ } D. class T2{ } class T2{ } protected class Test6 extends T2 public class Test6 extends T1, T2 { public int x=0; { public int x=0; public Test6(int x)

《java程序设计》实验指导书(完整)

实验一 Java实验环境的建立 一、实验目的 1.掌握Java编程环境的搭建过程; 2.掌握Jcreator pro软件的使用方法; 3.能使用Java doc文档。 二、实验内容 1.下载并安装JDK1、6,配置JDK环境变量; 2.下载Javadoc压缩包并解压在JDK安装路径下; 3.下载Jcreator pro 4、0并安装与配置使用环境; 4.使用实验环境运行书中实例代码,在屏幕上输出“Hello Java”字符串。 ①Java application程序代码如下: public class HelloJava { public static void main(String args[]) { System、out、println("Hello Java!"); } } ②Java applet程序代码如下: import java、awt、*; public class Hello extends java、applet、Applet { public void paint(Graphics g) { g、drawString("Hello!",30,30); } } 三、试验要求 1、预习试验内容并写出上机报告。 2、实验中出现的问题及实验体会。 实验二 Java语言程序设计训练 一、实验目的: 1.输入、输出操作实现原理与方法 2.掌握程序流程控制的实现方法 3.掌握数组的定义与操作方法 二、实验内容 1、计算 Result=1!+2!+3!+ (10) public class TestJieC{ public static void main(String arg[]){ long result=1;

java实验指导书

面向对象程序设计实验指导书 肖磊、宋鸿陟、彭红星 2012-10

目录 实验1 猜数字游戏 (3) 实验2 发牌游戏 (2) 实验3实现一个圆类 (3) 实验4 Java源代码分析程序 (4) 实验5 银行账户存取款业务 (5) 实验6 深克隆的House类 (6) 实验7 计算多个二维图形的面积之和 (7) 实验8学生成绩分析程序 (8)

实验1 猜数字游戏 实验类型:验证性 实验目的:掌握Java语言数据类型、基本输入输出、控制语句和方法的使用。 实验内容: 编写程序,项目名与类名均为GuessNumberGame。 每次游戏程序随机产生一个0-9之间的整数,要求玩家输入自己猜的数字,并对用户输入数字进行检查,进行如下提示: ?如果用户猜对了,则提示:恭喜你,猜对了。结束本次游戏。 ?如果用户猜错了,则提示:你猜的数字太(大或小)了。要求用户继续猜。 如果连续3次没有猜对,则提示:游戏失败。 一次游戏结束时,提示用户是否继续新的游戏,果用户选择继续,则开始新一次游戏,否则输出:你共进行了XXX次游戏,成功XXX次,失败XXX次。然后结束程序运行。 提交要求:打包为可以执行的JAR文档,其中要包含源程序文件。

实验2 发牌游戏 实验类型:验证性 实验目的:掌握Java数组、方法、类的基本定义。 实验内容: 编写程序,项目名和类名均为PokerGame。 描述: 共有1幅扑克牌,不包括大王和小王共52张牌。 可能有n个人参与扑克游戏,2<=n<=6。 程序运行时输入n,然后52张牌分别依次分发给n个人。不能整除时,每个人的牌数可以不同,如3个人,则第1个人18张,第2个和第3个人17张牌。 发牌完成后按花色(顺序为黑桃、红心、草花、方块)和牌面大小输出每个人得到的牌。 例如: 输入人数:3 输出如下: 第1个人: 黑桃:K 10 5A 红心:10 3 2 草花:K 10 8 6 3 A 方块:Q J 5 2 第2个人: ....... 第3个人: ...... 要求: (1)使用数组存放发牌情况。 (2)编写不同方法完成不同功能。 提交要求:打包为可以执行的JAR文档,其中要包含源程序文件。

java实验报告实验2答案

实验二熟悉Applet,GUI编程 实验目的: 本实验旨在巩固同学们对上课所讲Applet,异常处理,java的控制加深理解,图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,对java的语法和编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。了解如何使用布局管理器对组件进行管理,以及如何使用Java的事件处理机制。 实验内容: 创建一个java项目,命名为experiment2。(如何创建项目参考《实验一》的项目创建方法。) (一)创建图形用户界面 图形用户界面(Graphic User Interface ,简称GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。组件(Component)是构成GUI的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如Applet、Panel(面板)、Frame(窗口)等。通过容器的add方法把组件加入到容器中。 1.在Applet中添加标签、按钮并使用网格布局 (1)程序功能 在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。(2)编写LX6_1.java 程序文件,源代码如下: import java.awt.*; import java.applet.Applet; public class LX6_1 extends Applet { Label l1; Button b1, b2, b3, b4, b5, b6; public void init() {

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实验指导书答案 2

山东建筑大学实验报告 课程:Java面向对象程序设计语言 院(部):商学院 专业:电子商务 班级: 学生姓名: 学号: 指导教师:陈明志 完成时间:2014年6月

目录 实验一:JDK安装与配置 (3) 实验二:Java基本语法练习 (4) 实验三:数组和字符串练习 (6) 实验四:类和对象程序设计 (10) 实验五:接口、内部类与包练习 (15) 实验六:图形界面设计 (17) 实验七:线程设计 (18) 实验八:输入输出流设计 (19) 实验九:Applet编程 (20) 实验十:网络程序设计 (20)

实验一:JDK安装与配置 一、实验目的及任务 熟悉Java开发环境JDK,下载并安装JDK软件,熟悉JDK配置环境,掌握在JDK环境中编辑、编译和运行程序的操作。 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为Windows2000或Windows XP。 三、实验步骤 1、从网上下载最新JDK开发包,并对其进行安装,并配置JDK的path和classpath 环境变量。 2、从网上下载JDK相应的帮助文档,解压该文档并熟悉该文档使用。 3、下载UltraEdit或者TextPad、EditPlus,并安装你所下载的软件,熟悉该软件的编辑环境。 4、使用你所下载的编辑软件,编写如下程序: public class Hello{ public static void main(String args[]){ System.out.println(“Hello”); } } 并将该程序保存为Hello.java文件,保存到d:\myjava目录下。 5、对上述编写的程序进行编译和运行,在实验报告纸上写明编译和运行的过程,以及最后所运行的结果。 四、实验报告内容 1、在实验报告纸上写明下载的JDK版本名称,下载JDK的网址,以及所配置的path和classpath环境变量。 2、在实验报告纸上写明Java程序编译和运行的过程,以及步骤4的最后所运行的结果。

java语言程序设计实验指导书

《Java语言》实验指导书(12课时版) 实验一 Java开发环境 一、实验目的: 1、熟悉JAVA开发环境(JBUILDER/JDK) 2、认识Java程序结构。 二、实验内容: 1、配置JDK,编译调试HelloWorld程序。 2、熟悉JAVA开发工具,编译调试HelloWorld程序。 三、实验要求: 1、HelloWorld程序输出一条简单的问候信息; 2、实验报告中对程序结构做出详细的解释; 3、实验报告中给出配置JDK的步骤。 四、实验学时:2学时 五、实验步骤: 1、进入Java编程环境; 2、新建一个Java文件,命名为HelloWorld.java; 3、定义主方法public static void main(String[ ] args);调用System.out.println()方法,使 程序输出一条问候信息; 4、编译运行程序,观察运行情况和输出结果。(如果使用JDK环境,调用javac.exe 和java.exe编译和执行程序) 实验二类与对象 一、实验目的: 1、掌握类的定义与成员的封装。 2、掌握对象的创建,对象属性的访问和方法的调用。 二、实验内容: 1、自定义一个学生类。 2、导入并访问其他同学定义的学生类。 三、实验要求: 1、实验报告给出源代码。 2、实验报告中记录访问不同属性时编译器的反馈并分析原因。

四、实验学时:2学时 五、实验步骤: 1、定义一个学生类,包含三个属性学号、姓名和性别,访问修饰符分别是private、无修饰符和public修饰符。 2、在另一个类中创建学生类的对象,分别设置三个属性的值,观察实验结果。 3、导入同学定义的学生类。分别访问三个属性,观察实验结果。 实验三数据类型与数组 一、实验目的: 1、掌握数据类型与数组的定义、初始化与使用。 二、实验内容: 1、转置二维矩阵。 三、实验要求: 1、使用已知给定的数值初始化一个5X5的二维数组。 2、每次打印都应该按照从上到下从左到右的顺序。 3、实验报告给出完整代码。 四、实验学时:2学时 五、实验步骤: 1、用任意的23个整数初始化一个5X5的二维int类型数组,并逐行打印。 2、交换沿对角线上对称的元素,并打印转置后的矩阵。 实验四流程控制 一、实验目的: 1、掌握分支、循环语句的使用。 二、实验内容: 1、用循环语句打印一个99乘法表。 2、判断回文数(逆序排列后得到的数和原数相同)。 三、实验要求: 1、打印的乘法表应该呈现阶梯状。 2、给定一个1-99999之间的数,程序可以判断它的位数,并判断是否是回文数。 3、实验报告给出完整代码。 四、实验学时:2学时 五、实验步骤: 1、用循环语句打印一个99乘法表。 2、将一个5位以内的数按位逐个取出,分别存入5个变量中。 3、根据原始数的长度对取出的5个变量分别进行判断,以确定原始数是否是个回文

Java实验指导书24

《Java程序设计》实验指导书 实验1 JDK的使用 实验序号:1 实验名称:JDK的使用 适用专业:计算机科学与技术学时数:6学时 一、实验目的 (1)熟练掌握JDK编写调试Java应用程序及Java小程序的方法。 (2)熟练掌握Java应用程序的结构。 (3)了解Java语言的特点,基本语句、运算符及表达式的使用方法。 (4)熟练掌握常见数据类型的使用。 (5)熟练掌握if-else、switch、while、do-while、for、continue、break、return 语句的使用方法。 (6)熟练掌握数组和字符串的使用。 二、实验要求 (1)调试程序要记录调试过程中出现的问题及解决办法; (2)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验; (3)做完实验后给出本实验的实验报告。 三、实验设备、环境 奔腾以上计算机,Windows 2000 、JDK、IE浏览器 四、实验步骤及内容 (1)使用JDK和MyEclipse编译运行Java应用程序;适当添加注释信息,通过javadoc 生成注释文档;通过命令行参数传递“Hello world”字符串,并输出,通过JDK和MyEclipse编译运行。记录操作过程。 public class Hello { public static void main(String args[]) { System.out.println("Hello!"); } } (2)使用JDK和MyEclipse编译Java Applet,并建立HTML文档运行该Applet.打包mypackage,并压缩生成".jar"文件。记录操作过程。 import java.awt.*; import java.applet.Applet; public class HelloApplet extends Applet {

java程序设计实验指导书答案

java程序设计实验指导书答案 【篇一:java程序设计实验指导书】 =txt>一、实验目的及要求 1. 安装并配置java运行开发环境; 2. 掌握开发java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序; 3. 学习同时编译多个java源文件; 4. 掌握char型数据和int型数据之间的相互转换,同时了解 unicode字符表; 5. 掌握使用if…else分支和while循环语句解决问题。 二、实验学时 6学时 三、实验任务 1.安装jdk,设置环境变量path和classpath。 1)下载jdk 2)安装jdk 运行下载的“jdk-6u1-windows-i586-p.exe”软件包,在安装过程中 可以设置安装路径及选择组件,默认的组件选择是全部安装,安装 成功后,其中bin文件夹中包含编译器(javac.exe)、解释器(java.exe)、applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类库以便开发java程序使用,demo文件 夹中包含开源代码程序实例。 3)jdk中主要文件夹和文件 安装成功后,d:\java\jdk1.6中bin文件夹中包含编译器 (javac.exe)、解释器(java.exe)、applet查看器(appletviewer.exe)等可执行文件,lib文件夹中包含了所有的类 库以便开发java程序使用,sample文件夹包含开源代码程序实例,src压缩文件中包含类库开源代码。 设置环境变量 jdk中的工具都是命令行工具,需要从命令行即ms-dos提示符下 运行它们。以windows xp为例说明设置过程。 右击桌面“我的电脑”图标,选择“属性”菜单 在“高级”选项卡中单击“环境变量”按钮,将出现“环境变量”设置界 面

相关主题
文本预览
相关文档 最新文档