JAVA论文_第1页
JAVA论文_第2页
JAVA论文_第3页
JAVA论文_第4页
JAVA论文_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计课程定做 QQ1714879127合肥财经学院专科毕业论文用Java编写的山寨版QQ姓 名:_专 业:_班 级:_指导老师:_2010年 月 日用java编写的山寨版QQ摘要 随着互联网的快速发展,网络聊天工具已经作为一种重要的信息交流工具,受到越来越多的网民的青睐。目前,出现了很多非常不错的聊天工具,其中应用比较广泛的有Netmeeting、腾讯QQ、MSN-Messager等等。该系统开发主要包括一个网络聊天服务器程序和一个网络聊天客户程序两个方面。前者通过Socket套接字建立服务器,服务器能读取、转发客户端发来信息,并能刷新用户列表。后者通过与服务器建立连接,来进行客户端与客户端的信息交流。其中用到了局域网通信机制的原理,通过直接继承Thread类等来建立多线程。开发中利用了计算机网络编程的基本理论知识,如TCP/IP协议、客户端/服务器端模式(Client/Server模式)、网络编程的设计方法等。在网络编程中对信息的读取、发送,是利用流来实现信息的交换,其中介绍了对实现一个系统的信息流的分析,包含了一些基本的软件工程的方法。经过分析这些情况,该局域网聊天工具采用Eclipse为基本开发环境和java语言进行编写,首先可在短时间内建立系统应用原型,然后,对初始原型系统进行不断修正和改进,直到形成可行系统。关键词: 局域网、聊天、java、eclipse毕业设计课程定做 QQ1714879127目录第一节 引言01第二节 绪论2.1 JAVA的网络功能与编程022.1.1 JAVA概述032.1.2 JAVA的特点042.1.3 JAVA语言在网络上的应用052.2 TCP/IP 062.3 Soceket的简介07第三节 规划设计3.1 课题来源083.2 需求分析09第四节 系统分析与设计方案4.1 聊天系统的总体设计要点104.2 聊天系统的设计步骤及功能模块规划114.3 功能模块结构图12第五节 系统设计环境与测试5.1 开发环境和工具135.2 硬件环境145.3 聊天系统的测试15第六节 毕业设计总结6.1 毕业设计总结和展望166.2 经验和感想17参考文献18致 谢19第一节 引言 21世纪是一个变幻莫测的世纪,是一个催人奋进的时代,科学技术的飞速发展,知识更替日新月异。希望、困惑、机遇、挑战随时随地都有可能出现在每一个社会成员的生活之中。抓住机遇,寻求发展,迎接挑战,适应变化的制胜法宝就是学习,终生学习。 Java语言自1995年面世以来,以其与平台无关性、安全性、面向对象等特性被越来越多的人使用,是目前应用非常广泛的一门面向对象的程序设计语言,尤其应用于网络开发中的网上购物、网上银行、远程教学、虚拟课堂以及网络游戏等方面。第二节 绪论2.1 Java的网络功能与编程 计算机网络形式多样多样,内容繁杂。网络上的计算机要相互通信,必须遵循一定得协议。目前使用最广泛的网络协议就是Internet上使用的TCP/IP协议。 网络编程的目的就是只直接或间接地通过网络协议与其他计算机进行通信。网络编程中要两个主要的问题,一个事如何准确地定位网络上一台或多台主机;另一个就是找到主机后如何可靠、高效地进行数据传输。在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由有IP地址可以唯一地确认Internet上的一台主机。而TCP层则提供面向应用的可靠地或非可靠地数据传输机制,这是网络编程的主要对象。 目前较为流行的网络编程模型是客户机/服务器(c/s)结构。即通信双方中的一方作为服务器等待客户提出请求并予以响应,客户则在需要服务时向服务器提出申请。服务器一般作为守护进程始终运行,监听网络端口,一旦有客户请求,就会启动一个服务进程来响应该客户,同时自己继续监听服务端口,使后来的客户也能及时得到服务。2.1.1 Java语言的概述 Java语言最初的应用对象是消费性电子产品(即PDA、电子游戏之类的产品)。为了进入消费性电子产品市场,Sun公司专门成立了一个项目小组,目标是设计嵌在消费性电子产品中的小型分布式系统软件,能够适用于异构网络、多主机体系结构,能实现信息安全传递。项目小组的最初设想是用C+语言完成这个目标。由于C+语言的复杂性和不安全性,不能胜任这项工作。为此,项目小组开发了一个取名为OAK语言。 OAK语言在消费性电子产品市场上没有获得青睐。但在当时,Internet开始流行,人们发明了一种网络传输协议,这种协议可以在文本中插入图片和声音,能使单调Internet世界变得图文并茂。虽然Web页面拥有了图文和声音,但仍然是静态的,不具备交互性。要让页面拥有动态画面,并能交互,许愿在Web页面中嵌入一段程序。由于在Internet上运行的是数以千计不同种类的计算机,这就要求编写这种程序的语言必须具有平台无关性,并要求语言必须简练,支撑环境要小,而安全性药膏。OAK语言恰好能够满足这些要求。 将OAK语言正式应用于Internet还需要进一步完善,还要求有一个支持它的Web浏览器。能用于编写浏览器,并获得浏览器支持的心版本OSK语言取名JAVA。Internet得到JAVA语言的支持,可以实现真正的交互,人们使用浏览器能“漫游”丰富多彩的Internet世界。2.1.2 Java语言的特点 Java语言主要有以下特点:1. 强类型Java语言是一种强类型语言,强类型能约束程序必须遵守更多的编程规定,也能让编译器检测出程序中尽可能多的错误。2. 编译和解释Java语言是一种高级编程语言,用Java语言编写的源程序在计算机上运行需经过编译和解释执行两个严格区分的阶段。Java的编译程序先将Java源程序编译成与机器无关的字节码,不是通常的编译程序将源程序编译成特定计算机的机器代码。运行时,Java的运行系统装在和连接需要执行的类,并作必要优化后,解释执行字节码程序。3. 面向对象面向对象是程序员编写大型程序、有效控制程序复杂性的主要手段。Java语言在面向对象方面,比C+“纯”,它的所有数据类型,包括布尔类型、整形、字符型等,都有响应的类,程序可完全基于对象编写。面向对象语言主要有封装性、继承性和多态性三个特点。封装就是将实现细节隐藏起来,只给出如何使用的信息。数据及数据行的操作用类封装,对象是类的实例,外界使用对象中的数据及可用的操作受到一定得限制。继承体现众多对象的一种层次关系,下一层的类可从上一层的类继承定义,从上一层类派生的类的对象继承上一层对象那个的特征,同时可以改变和扩充一些特性,以适应自身的特点。多态性的意义主要体现在逻辑上相同的不同层次上的操作,使用相同的操作名,根据具体对戏那个,能自动选择对应的操作。Java语言很实用地实现这三种特性。4. 平台无关性与平台无关事对程序可移植性最直接最有效地支持。Java语言的设计者在设计时重点考虑Java程序的可移植性。采用多种机制来保证可移植性、其中最主要的是定义了一种虚拟机,以及虚拟机使用的Java自己吗。在任何平台上,Java源程序被Java编译器编译成Java字节码程序,从而实现Java程序与平台无关。另外,Java语言采用基于国际标准的数据类型,在任何平台上,同一种数据类型是一致的。例如,用int数据都是32为整数。相反,C语言会随着硬件平台的改变,用int表示的整数位数也可能不全相同。Java语言提高可移植性的代价是降低程序的执行效。由于Java语言也是一种解释执行的语言,Java程序的执行速度与C程序的执行速度有较大的差别。不过,为了尽量弥补执行那个效率低的缺陷,Java的字节码在设计上非常接近现代计算机的机器码,这有助于提高解释执行的速度。5. 安全性 Java是在网络环境中使用的编程语言,必须考虑请安全性问题,主要有以下几个方面: 设计的安全防范:Java语言没有指针,避免程序因为指针使用不当,访问不该访问的内存空间;提供数组元素小标检测机制,禁止程序越界访问内存;提供内存自动回收机制,避免程序遗漏或重复释放内存。 运行安全检查:为了防止字节码程序可能被非法改动,解释执行那个前,先对字节码程序做检查,防止网络“黑客”对字节码程序已作了而已改动,达到破坏系统的目的。最后,浏览器限制下载的小应用程序不允许访问本地文件,避免小应用程序破坏本地文件。6. 分布式计算 Java语言支持客户机/服务器计算模式。Java程序能利用URL对戏那个,能访问网络上的对象,如同访问本地的文件一样,实现数据分布。另外,Java的客户机/服务器模式也可以把计算从服务器分散到客户机端,实现操作分布。7. 多线程 线程是比进程更小的一种可并发执行的单位,每个进程都有自己独立的内存空间和其他资源,当进程切换时需要进行数据和资源的保护与恢复。若干协同工作地线程可以共享内存空间和资源,线程切换不需要数据的保护与恢复。Java的运行环境采用多线程实现,可以利用系统的空闲时间执行诸如内存回收等操作;Java语言提供语言级线程支持,用Java语言能直

温馨提示

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

评论

0/150

提交评论