合工大JAVA实验报告_第1页
合工大JAVA实验报告_第2页
合工大JAVA实验报告_第3页
合工大JAVA实验报告_第4页
合工大JAVA实验报告_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Java技术》实验报告实验一:2016年10月11日学院计算机与信息学院专业班级姓名成绩课程Java技术实验项目实验一Java开发环境指导名称名称的安装与配置教师教师评教师签名:语年月日一、实验目的1.掌握JDK的安装步骤(有条件的话可以在 Linux系统下安装)。2.理解环境变量 PATH,CLASSPATH的作用,以及它们的设置方法 (Win98

Win2000/XP

下的不同设置方法 )。3.熟悉TextPad(或JCreator)编辑环境,编写简单的Application程序,并编译和解释执行。4.记录编译和执行 Java程序当中的系统错误信息提示,并给出解决办法。二、实验原理1.掌握安装的过程。2.安装JCreator 软件,用于编译 java程序。3. 在Textpad环境下编写一个程序,在 DOS提示符下编译并执行这个程序。设置环境变量PATH,CLASSPATH,使得Java程序能正确编译和执行。5. 编写一个类

A,它位于包

a中,保存到中,再编写一个类

B,它位于包

b中,保存到中。在类

B中实例化类

A的一个对象。分别编译类

A和类

B。三、使用硬件、软件环境PC计算机一台,配置为CPU为1.5G,内存为512M,硬盘为40G,安装WindowsXP操作系统。另外,使用 JCreator,等软件四、实验过程、步骤及原始记录 (算法、原程序、测试结果,分析等 )1.安装集成环境,安装成功后,配置 path,classpath 路径,让用户在任何目录下均可用到Java的系统资源。① 先配置%JAVA_HOME%环境变量,路径为 jdk的目录;② 配置path环境变量,路径为 %JAVA_HOME%\bin;③ 再配置classpath 环境变量,路径为 %JAVA_HOME%\jre\lib;2.在记事本编写 helloworld 程序,并在 DOS命令行下编译运行。① 在JCreator 中写出如下代码,并保存为:publicclassHelloWorld{publicstaticvoidmain(String[]args){"HelloWorld!");}}② 在命令行中进入到该文件路径,并输入javac完成编译,再输入javaHelloWorld完成运行。3.用记事本编写包a包b的程序,并用DOS命令行运行。执行过程:①将两个记事本,改名为和,并写出如下程序:A.java文件的源程序:packagea;publicclassA{publicvoidsay(){"Succeed!");}}文件中的源程序:packageb;importa.*;publicclassB{publicstaticvoidmain(Stringargs[]){Aaa=newA();();}}②先在DOS命令行中编译文件,在命令行中输入 javac –d.再编译文件,在命令行中输入 javac -d.③在命令行中输入 java即可完成。五、实验结论、分析、思考题与心得体会通过本次实验,我有以下几方面的收获、认识和体会:1、学会了在记事本和命令行 ,JCreator, 等环境下编写程序及运行程序的方法;2、学会了如何安装 JDK,以及如何配置 %JAVA_HOME%,path,classpath 等环境变量3、加深了Java中相关语法的认识:① 文件名必须与 public 类的类名相同,并且一个文件中只允许有一个

public

类。Java对大小写敏感,如String中的S就严格区分大小写;对中文标点符号和英文标点符号敏感,java只能识别英文标点符号。③ 在用记事本编写包 a包b的程序,并用 DOS命令行运行时。要将两个类分别放在两个文件中,要先编译再编译,在编译时一定要在命令行中输入 javac –d.和javac–d.才能自动打包;两个文件都编译完成以后,在命令行的父目录中输入java来执行,输入java。3、思考题1). 什么是JVM,它的作用是什么?JVM就是java虚拟机的英文简写, java虚拟机就是为任何的平台提供一个编译 java程序的接口。就是将编译的 java 程序翻译,以供不同的平台去识别。2). 如何理解 PATH和CLASSPATH,,如何设置它们。PATH和CLASSPATH分别是JavaJDK和JRE的路径。设置是在计算机属性中的高级系统设置的环境变量,配置方法如下:① 先配置%JAVA_HOME%环境变量,路径为 jdk的目录;② 配置path环境变量,路径为 %JAVA_HOME%\bin;③ 再配置classpath 环境变量,路径为 %JAVA_HOME%\jre\lib;《Java技术》实验报告实验二:2016年10月11日学院计算机与信息学院专业班级姓名成绩课程Java技术实验项目实验二类的封装、继指导名称名称承、多态教师教师评教师签名:语年月日一、实验目的复习、理解OOP的三大特征——封装、继承和多态。学会使用Java编写简单的类。理解类的属性和方法。掌握关键字private,protected,public的作用,掌握静态类,内部类的概念。掌握多态的概念。二、实验原理分别编写两个类 Point2D,Point3D来表示二维空间和三维空间的点,使之满足下列要求:(1)Point2D有两个整型成员变量x,y(分别为二维空间的X,Y方向坐标),Point2D的构造方法要实现对其成员变量x,y的初始化。(2)Point2D有一个void型成员方法offset(inta,intb),它可以实现Point2D的平移。(3)Point3D是Point2D的直接子类,它有有三个整型成员变量x,y,z(分别为三维空间的X,Y,Z方向坐标),Point3D有两个构造方法:Point3D(intx,inty,intz)和Point3D(Point2Dp,intz),两者均可实现对Point3D的成员变量x,y,z的初始化。(4)Point3D有一个void型成员方法offset(inta,intb,intc),该方法可以实现Point3D的平移。5)在Point3D中的主函数main()中实例化两个Point2D的对象p2d1,p2d2,打印出它们之间的距离,再实例化两个Point3D的对象p3d1,p3d2,打印出他们之间的距离。(提示:方法)三、使用硬件、软件环境PC计算机一台,配置为 CPU为1.5G,内存为 512M,硬盘为 40G,安装WindowsXP操作系统。另外,使用 JCreator,等软件四、实验过程、步骤及原始记录

(算法、原程序、测试结果,分析等

)利用类的继承写一个

point2D

类,其子类是

point3D

。子类

Point3D

的构造函数调用了父类的构造函数;计算平面两点的距离函数和计算空间两点的距离函数写在父类

Point2D

中,并且他们是静态方法, 在子类继承后,在其主方法(主方法是静态的) 中可以直接调用 (或者通过类名调用);另外平移函数可以对点进行平移。源程序如下:classPoint2D{intx,y;publicPoint2D(intx,inty)

么是类的多态性。接口的多种不同的实现方式即为多态。同一段代码在不同的地方,会执行不同的操作。《Java技术》实验报告实验三:2016年10月11日学院计算机与信息学院专业班级姓名成绩课程Java技术实验项目实验三基于GUI的网络指导名称名称通信程序设计教师教师评教师签名:语年月日一、实验目的掌握Java中GUI程序的编写,包括事件监听机制。2.掌握Java的网络通信编程, ServerSocket ,Socket类的使用。3.掌握Java中多线程的编程, Thread类,Runnable接口的使用。4.掌握用面向对象的方法分析和解决复杂问题。二、实验原理编写程序完成以下功能:设计一个基于GUI的客户-服务器的通信应用程序,如图1,图2所示。图1Socket通信服务器端界面图2Socket通信客户端界面2.图1为Socket通信服务器端界面,点击该界面中的【 Start】按钮,启动服务器监听服务(在图 1界面中间的多行文本区域显示“ Serverstarting ⋯”字样)。图2为Socket通信客户端界面,点击该界面中的【 Connect】按钮与服务器建立链接,并在图 2所示界面中间的多行文本区域显示“ Connecttoserver⋯”字样,当服务器端监听到客户端的连接后,在图 1界面中间的多行文本区域追加一行“Client connected⋯”字样,并与客户端建立 Socket连接。当图1所示的服务器端和图2所示的客户机端建立Socket连接后,编程实现这两端的数据通信,每次将接收到对方的数据追加显示在多行文本框中。三、思考题对整个实验进行总结,写出实验心得。在完成上述实验内容的基础上,尝试实现服务器端能够与多个客户机进行通信。三、使用硬件、软件环境PC计算机一台,配置为 CPU为1.5G,内存为512M,硬盘为40G,安装WindowsXP操作系统。另外,使用 JCreator,等软件四、实验过程、步骤及原始记录(算法、原程序、测试结果,分析等)①分别编写两个文件;这两个代码的结构十分相似,都是先写一个主类,再写另一个实现类,主类通过创建实现类的对象来调用其构造方法来实现功能。实现类中写了很多方法,也写了很多内部类,方法层层调用。实现类在构造方法中写了调用了实现GUI的函数,也为按钮注册了监听器。在不同的内部类中写了不同监听器所调用的actioPerformed()方法。②在服务器中创建ServerSocket对象来接受客户端的连接请求,并指定端口号,客户端通过Socket对象来向服务器的ip和端口发送连接请求。服务器在接到连接请求后,服务器会创建一个新的Socket对象与客户端的Socket对象连接。连接成功后通过IO流来通信,服务器的输入流是客户端的输出流,服务器的输出流时客户端的输入流。服务器代码如下:import.*;import.*;import.*;import.*;import.*;publicclassServer{publicstaticvoidmain(String[]args){MyFrameserve=newMyFrame();(true);(false);

;import.*;import.*;import.*;import.*;importclassClient{publicstaticvoidmain(String[]args){MyFrameclient=newMyFrame();(true);(false); ..\n");..\n"portNum=());

//

读取

port

文本框中的字符串,并将字符串转化为整型赋给

portNumsocket=newSocket(),portNum);// 定义对象socket,并指定主机号(host)和端口号 portNumClientThreadct=newClientThread(); // 定义一个 ClientThread 类的对象ct(); // 启动一个线程,并调用ClientThread 类中的run()方法}catch(Exceptionex){}}}classSayListenimplementsActionListener{Stringstr;publicvoidactionPerformed(ActionEvente){try{PrintWriterout=newPrintWriter(newBufferedWriter(newOutputStreamWriter())),true);

//

socket

获取字节输出流,并将其最终转化为PrintWriterstr=();

//

从文本框中获取字符串赋给

strif(!()){(newDate()+"\n"+str); //

打印日期和

str(newDate()+"\nme:"+str+"\n");();

//

清空缓存区}("");}catch(Exceptionex){}}}classClientThreadextendsThread{publicvoidrun(){try{BufferedReaderin=newBufferedReader(newInputStreamReader()));// 获取socket 对象的字节输入流,并将字节流最终转换为缓冲字符输入流Stringstr;while(true){str=();

//

按行读取//("\a");

//

喇叭响一声(str+"\n"); // 延长字符串}}catch(Exceptionex){}}}}测试结果:五、实验结论、分析、思考题与心得体会①第一次写这个程序的时候我用的数据报通信 DatagramSocket和DatagramPacket来写,结果发现是UDP通信,发送一个消息只有等到对方回复后才能发送第二个消息,十分不方便。后来用Socket和ServerSocket 来

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论