欢迎来到天天文库
浏览记录
ID:9383251
大小:53.13 KB
页数:11页
时间:2018-04-29
《基于socket的java网络通信程序 (2)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于SOCKET的JAVA网络通信程序摘要:本文阐述了Java技术的优势和Socket的通信机制,并讨论了使用Eclipse实现基于Socket的网络通信程序的程序。关键词:Java,网络,SocketAbstract:ThisarticledescribestheadvantagesofJAVAtechnology,DiscussedtheuseofEclipsetoachievenetworkcommunicationsprogrambasedSOCKETtechnologyKeyword:Jav
2、a,Network,Socket一、Java语言随着微软推广.Net技术力度的加大,Java技术被一部分没有真正接触和使用它的人所误解,他们可能认为.Net技术是Java技术的升级,现在学习编程要学习.Net。那么学习Java编程,到底是不是一个明智的选择呢?带着这些疑问,让我们看一下Java语言的优势:(1)免费Sun免费提供用来开发Java应用程序的一切,你不必付任何的版税。与Java本身相比,JavaAPI更是可贵的免费财富。想使用Socket操作网络?API中有;想连接到SQL数据库?API中
3、有;想给应用程序一个漂亮的用户界面?API中有;想要处理数字图形、播放音乐、解析字符串或者创建数字签名?API中全都有(2)跨平台"一次编写,随处运行",Java系统可以运行在不同的操作系统和硬件上。随着Linux的持续增长以及MacOSX完全支持Java技术,跨平台的特性变得越来越有分量。由于Java跨平台,JavaAPI自然也是平台统一的。对程序员而言,没有比统一的API函数能够让他们更欣慰的了--已经有了圆形的轮子,何必再从头发明轮子呢?我们拿JavaAPI与C++的类库相比便可以知道它的可贵之
4、处。有Windows编程经验的C++程序员肯定经历过被MFC(MicrosoftFoundationClasses,微软基类库)折磨的日子,学习曲线陡峭,没有若干个月根本无法开始生产,一段时间不接触遗忘率又高。据说,即使在微软公司内部,除了MFC开发小组,谁都不乐意用它。即便你熟悉了MFC,能够顺利开发Windows应用程序,如果你要编写一个Linux应用程序,MFC又派不上用场了,你必须学习Linux下C++开发的一套库函数。还有UNIX、FreeBSD、MacOS......你学得过来吗?反观Ja
5、vaAPI,操作系统,你爱谁是谁,只要编写一次便可随处运行!(3)简单与C++等语言相比较,语法上Java是简单的。在Java中,要写出低劣的代码也不是一件容易的事情。一方面,垃圾回收机制堵住了内存泄漏的可能性,另一方面就是异常捕捉机制,它强迫你做最坏的打算。编写程序时,难免会遇到一些意外,比如文件无法打开、网络读取失败等特殊情况。在C++等语言中是依靠返回值来判断的,如果一句句地检查返回值,那实在是太麻烦了。从而,程序员习惯性地忽略返回值的检查,并安慰自己一切都会好起来的。这便埋下了隐患。在Java
6、中,Java的方法可以抛异常,而你必须应答异常,即使你不想进行任何操作。比如编写打开文件的代码,你不得不响应异常以防意外发生,否则程序根本不能够通过编译。未雨绸缪,使得Java系统更稳健。(4)企业应用的成熟平台Java技术的企业应用旨在提升企业竞争力,所以Java技术受到了企业的欣赏,市场份额是同类技术中最大的。同时,Java开放标准,所以供应商众多。市面上有许多的应用服务器、工具与构件可以选择,从高端的BEAWebLogic、IBMWebSphere等商业软件,到Tomcat、JBoss等开源的免
7、费工具,一应俱全。作为Java技术的初学者,不需要任何花费就能够进行Java企业应用的自我培训,以后若参与Java的商业项目开发,便可以无缝地把软件移植到高端的商业平台上去。反观.Net,想免费自学,不盗版是不可能的啦。(5)开源组织或者非盈利机构的支持开源组织是无政府主义的梦想--没有政体,没有所属权,言论与行动自由,仅仅依靠渴望共享与交流的信仰及无私奉献来维系。Java世界中,开源组织与非盈利机构发挥到了极致,许多出色的工具都出自它们之手。比如JUnit、Cactus、Tomcat、Struts、
8、JBoss、Eclipse、ANT、Xerces、Hibernate、Axis、AspectJ等等,许多工具还会出现在我们的咖啡馆中,扮演重要的角色。二、Socket机制所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接
此文档下载收益归作者所有