浅议网络通信程序的编写

来源 :中国集体经济·中 | 被引量 : 0次 | 上传用户:dulizhi123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  网络上的系统结构多为客户/服务器模式,服务器端负责数据和图像等的存储、维护、管理以及传递,客户端则负责人机界面的操作、送出需求及显示收回的数据。
  下面介绍一下如何使用JAVA来进行网络编程:由于客户端通过IE同服务器建立联系,所以客户端使用Applet,服务器端使用Application;服务器应设置成多线程,应答多个客户的请求;两端通信使用SOCKET机制。
  
  一、Java中输入/输出流概念
  
  过滤流Data Input Stream 和Data Output Stream除了分别作为Filter Input Stream和Filter Output Stream的子类外,还分别实现了接口Data Input 和Data Output。接口Data Input 中定义的方法主要包括从流中读取基本类型的数据、读取一行数据、或者读取指定长度的字节数。接口Data Output中定义的方法主要是向流中写入基本类型的数据或者写入一定长度的字节数组。
  
  二、J Socket机制
  
  Socket是面向客户/服务器模型设计的,网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。客户程序可以向Socket写请求,服务器将处理此请求,然后通过Socket将结果返回给用户。Socket通信机制提供了两种通讯方式:有联接和无联接方式,分别面向不同的应用需求。
  
  三、Java语言
  
  Java语言的优点主要表现在:简单、面向对象、多线程、分布性、体系结构中立、安全性等方面。
  (一)简单性
  Java与C++语言非常相近,但Java比C++简单,它抛弃了C++中的一些不是绝对必要的功能,如头文件、预处理文件、指针、结构、运算符重载、多重继承以及自动强迫同型。Java实现了自动的垃圾收集,简化了内存管理的工作。这使程序设计更加简便,同时减少了出错的可能。
  (二)面向对象
  Java提供了简单的类机制和动态的构架模型。对象中封装了它的状态变量和方法,很好地实现了模块化和信息隐藏;而类则提供了一类对象的原型,通过继承和重载机制,子类可以使用或重新定义父类或超类所提供的方法,从而既实现了代码的复用,又提供了一种动态的解决方案。
  Java是一种完全面向对象的程序设计语言,它除了数组、布尔和字符三个基本数据类型外的其它类都是对象,它不再支持全局变量。在Java中,如果不创建新类就无法创建程序,Java程序在运行时必须先创建一个类的实例,然后才能提交运行。
  Java同样支持继承特性,Java的类可以从其它类中继承行为,但Java只支持类的单重继承,即每个类只能从一个类中继承。
  Java支持界面,界面允许程序员定义方法但又不立即实现,一个类可以实现多个界面,利用界面可以得到多重继承的许多优点而又没有多重继承的问题。
  (三)多线程
  多线程使应用程序可以同时进行不同的操作,处理不同的事件。在多线程机制中,不同的线程处理不同的任务,他们互不干涉,不会因一处等待影响其他部分,这样容易实现网络的实时交互操作。
  Java程序可以有多个执行线程,如可以让一个线程进行复杂的计算,而让另一个线程与用户进行交互,这样用户可以在不中断计算线程的前提下与系统进行交互。多线程保证了较高的执行效率。
  (四)分布性
  Java是面向网络的语言。通过它提供的类库可以处理TCP/IP协议,用户可以通过URL地址在网络上很方便的访问其他对象。
  (五)体系结构中立
  Java是一种网络语言,为使Java程序能在网络的任何地方运行,Java解释器生成与体系结构无关的字节码结构的文件格式。Java为了做到结构中立,除生成机器无关的字节码外,还制定了完全统一的语言文本,如Java的基本数据类型不会随目标机的变化而变化,一个整型总是32位,一个长整型总是64位。
  为了使Java的应用程序能不依赖于具体的系统,Java语言环境还提供了用于访问底层操作系统功能的类组成的包,当程序使用这些包时,可以确保它能运行在各种支持Java的平台上。
  (六)安全性
  用于网络、分布环境下的Java必须要防止病毒的入侵,Java不支持指针,一切对内存的访问都必须通过对象的实例变量来实现,这样就防止了程序员使用欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。
  
  四、JAVA工具
  
  (一)Java Development Kit(JDK)
  JDK是Java开发工具包()的缩写。它是一种用于构建在Java平台上发布的应用程序、applet和组件的开发环境。主要有Java编译器、Java解释器、Applet viewer等。
  (二)Visual J++
  Visual J++集成了可视化界面设计、交互式调试、代码编辑、联机帮助信息和介绍如何快速掌握该开发环境的实用向导等多项功能,同时具有能充分利用Active X和COM新技术的优势。利用Visual J++可创建交互性很强的Internet应用程序,是难得的Java开发系统。
  
  五、J客户机/服务器通信的实现
  
  (一)Application同Applet的通信
  两端通过Socket机制进行连接:又分为客户端的编程流程与服务器端的编程流程。正是由于Java系统具有基于Socket的灵活通信机制,因而其应用程序能自由地打开和访问网络上的对象,就像在本地文件系统中一样。
  (二)Applet之间的通信
  Applet之间的通信使用Applet Context类的get Applet()方法。在该课题中大量使用了该种通信方法,因为专门同服务器端通信的Applet中包含接收信息方法和发送信息方法,所有客户端的Applet都要使用负责通信的Applet中的方法,所以客户端的Applet同负责通信的Applet必须进行通信。
  
  参考文献:
  1、廖雷等.Java程序设计教程[J].中国电力出版社,2003.
  2、Warton.Java多线程编程初步[N].电脑报,2004-04-10.
  3、张立等.基于Client/Server模式的数据库应用软件的设计与实现[J].计算机应用研究,1999(4).
  (作者单位:河南许昌学院计算机系)
其他文献
愤怒的博弈者是具有攻击性的,为了减少对手的效用,他们甚至愿意牺牲自己的利益。本文为刻画该行为模式构建了一个包含更新算子的模态逻辑。与传统的针对偏好的更新不同,我们的逻
期刊
城市经济是国家经济的命脉,而其主要是通过第一、第二、第三产业的发展、更替、深化得以迅速发展的,在城市产业经济发展过程中,城市土地利用形态也必然地产生相应的变化.rn城
红色,一向是欣欣向荣、繁荣发展的代表颜色.将其用在2016年的炼化市场,是再合适不过的.rn尽管2016年“三桶油”的业绩表现不尽如人意,但受益于油价走低,炼油化工成本陡降,在
期刊
从事离退休工作的同志以什么样的态度,用什么样的工作方法去开展工作,这不仅仅是一个自身修养的问题,而且是一个关系到新疆油田公司离退休政策能否落实的问题.
摘要:在科学发展观的指引下实现经济社会和人的全面发展,是党执政兴国的第一要务。医院作为实现社会职能的一分子,承载着为经济社会和人的全面发展保驾护航的重任。因此,必须从关系经济社会发展全局的战略高度把握科学的医院经济发展本质,从以人为本,实现全面、协调、可持续发展的根本要求上,深入研究并真正树立起科学的医院经济发展观。  关键词:科学;医院经济;发展观    一、科学的医院经济发展观必须以落实科学发
土地整治作为当前优化国土空间布局,促进土地资源有效配置的重要平台,日益成为生态文明建设的重要组成部分,根据《全国土地利用总体规划纲要(2006年~2020年)》,到2020年,通过
领事办理认证是领事诸多职务中的一种。《维也纳领事关系公约》第5条虽对“领事职务”作了“于国际法许可之限度内,在接受国内保护派遣国及其国民——个人与法人——之利益
低油价时期,壳牌保持不同的业绩增长,实现业绩增长的背后是不断产生正向现金流.2016年壳牌收购英国天然气集团(BG),总金额达540亿美元的交易,给壳牌带来一定的资金压力,壳牌
期刊
旧城改造是城镇化建设的一个重要内容,其目标是在旧城镇的原规模基础上扩大城镇的容量,提高城镇的质量,推动农村人口居住地点向城镇的迁移和农村劳动力从事职业向城镇二、三