Java+socket实现双机通信(完整论文)
Java使用socket实现两人聊天对话

Java使⽤socket实现两⼈聊天对话import java.io.*;import .ServerSocket;import .Socket;import java.util.Scanner;/*** User: HYY* Date: 13-10-29* Time: 下午9:57* To change this template use File | Settings | File Templates.*/public class Server {public static final int SERVER_PORK = 10000;public static void main(String[] args) throws IOException, InterruptedException {ServerSocket serverSocket = new ServerSocket(SERVER_PORK);System.out.println("正在监听 " + SERVER_PORK + " 端⼝!");Socket socket;BufferedReader bufferedReader;while (true) {socket = serverSocket.accept();System.out.println("⼀客户端连接。
");Thread writerThread = new Thread(new MyServerWriter(socket));writerThread.start();bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));try {String msg;//客户端发过来的信息while ((msg = bufferedReader.readLine()) != null) {System.out.println("##客户端:" + msg);}} catch (IOException e) {try {if (!socket.isClosed()) {socket.close();}} catch (IOException e1) {System.out.println("关闭socket出现错误");}}System.out.println("提⽰:当前客户端已经断开连接,服务器正等待下⼀个客户端的连接。
JAVA中使用Socket通讯的实现

JAVA中使用Socket通讯的实现何咏明【摘要】使用java语言在MyEclipse环境下,借助于Swing可视化界面的设计,完成了相邻计算机使用Socket进行通信。
服务器套接字(ServerSocket)创建于指定的端口,通过ServerSocket的阻塞应答来监听客户端是否有连接请求,实现了局域网内简单的聊天功能。
%JAVA is used in MyEclipse with the help of Swing visual interface design to complete adjacent computers' communication by using Socket.Server Socket is created on the assigned port through the ServerSocket obstruction to monitor the clients to see if they have request for connection,achieving LAN chatting feature.【期刊名称】《长江工程职业技术学院学报》【年(卷),期】2012(029)004【总页数】3页(P35-37)【关键词】套接字;多线程;窗体【作者】何咏明【作者单位】长江工程职业技术学院,武汉430212【正文语种】中文【中图分类】TP312JA所谓socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄。
应用程序通常通过“套接字”向网络发出请求或者应答网络请求。
以J2SDK-1.6为例,Socket和ServerSocket类库位于包中。
ServerSocket用于服务器端,Socket是建立网络连接时使用的。
在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。
对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。
利用Socket实现双机通信计算机网络课程设计报告

目录1、目录 (1)2、题目 (2)3、设计任务 (2)4、WinSocket简介及特点原理 (2)5、TCP简介及特点原理 (3)6、Visual C++简介 (7)7、设计方案 (8)8、系统的原理框图和程序流程图 (10)9、实验中的问题 (14)10、实验结果及分析………………………………………………1 411、课程设计的总结体会 (16)12、参考文献 (16)利用Socket实现双机通信一、设计任务1.利用WinSock来实现双机通信,理解TCP状态机图。
2.要求使用WinSock编程,采用其中的TCP面向连接方式,实现文本数据的交换。
二、WinSocket简介及特点原理2.1、什么是socket所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。
应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。
要学Internet上的TCP/IP 网络编程,必须理解Socket接口。
Socket接口设计者最先是将接口放在Unix 操作系统里面的。
如果了解Unix系统的输入和输出的话,就很容易了解Socket 了。
网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。
Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。
常用的Socket类型有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。
流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。
Java中的网络编程和Socket通信篇

Java中的网络编程和Socket通信篇Java是一种面向对象的编程语言,具有强大的网络编程能力。
在Java中,使用Socket通信可以实现不同计算机之间的数据传输和通信。
本文将介绍Java中的网络编程以及Socket通信的相关知识。
一、网络编程简介网络编程是指在计算机网络环境下进行程序设计和开发的过程。
Java提供了丰富的类和方法来支持网络编程,例如包中的Socket和ServerSocket类,以及java.io包中的InputStream和OutputStream类等。
二、Socket通信基础Socket是一种抽象概念,表示在网络上的一个通信端口。
它可以用于在不同的计算机之间建立通信渠道,实现数据传输和通信。
Socket通信过程包括服务器端和客户端两个角色。
1.服务器端服务器端负责监听来自客户端的连接请求,并接受连接。
以下是服务器端的基本步骤:1)创建一个ServerSocket对象,指定服务器的端口号。
2)调用ServerSocket的accept()方法,监听客户端的连接请求。
3)一旦有客户端连接,通过accept()方法返回一个Socket对象,用于和客户端进行通信。
4)通过Socket对象的InputStream和OutputStream实现数据的读取和写入。
5)通信结束后,关闭Socket连接。
2.客户端客户端负责向服务器端发送连接请求,并进行数据的读取和写入。
以下是客户端的基本步骤:1)创建一个Socket对象,指定服务器的IP地址和端口号。
2)通过Socket对象的InputStream和OutputStream实现数据的读取和写入。
3)通信结束后,关闭Socket连接。
三、实例演示:客户端与服务器端的简单通信接下来,我们将通过一个实例来演示如何在Java中进行Socket通信。
1.服务器端代码:```javaimport java.io.*;import .*;public class Server {public static void main(String[] args) throws Exception {ServerSocket serverSocket = new ServerSocket(8888);System.out.println("服务器已启动,等待客户端连接...");Socket socket = serverSocket.accept();System.out.println("客户端已连接!");InputStream inputStream = socket.getInputStream();BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));String message = bufferedReader.readLine();System.out.println("客户端发送的消息是:" + message);OutputStream outputStream = socket.getOutputStream();BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream));bufferedWriter.write("已收到消息!");bufferedWriter.flush();bufferedReader.close();bufferedWriter.close();socket.close();serverSocket.close();}}```2.客户端代码:```javaimport java.io.*;import .*;public class Client {public static void main(String[] args) throws Exception {Socket socket = new Socket("localhost", 8888);System.out.println("已经连接到服务器!");OutputStream outputStream = socket.getOutputStream();BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream));bufferedWriter.write("你好,服务器!");bufferedWriter.newLine();bufferedWriter.flush();InputStream inputStream = socket.getInputStream();BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));String response = bufferedReader.readLine();System.out.println("服务器的响应是:" + response);bufferedWriter.close();bufferedReader.close();socket.close();}}```以上代码演示了一个简单的Socket通信过程,其中服务器端监听端口为8888,客户端连接到服务器并向其发送消息,服务器端接收消息并回复已收到的消息。
使用socket编程实现不同主机之间的通信进程设计心得 -回复

使用socket编程实现不同主机之间的通信进程设计心得-回复使用socket编程实现不同主机之间的通信进程,是一项重要的网络技术,也是现代网络应用中不可或缺的一环。
通过socket编程,可以在不同主机上的进程之间进行数据交互和通信,实现实时的信息传递、资源共享和远程控制等功能。
在实际的工作中,我深刻体会到了使用socket编程实现不同主机之间的通信的重要性和优势。
首先,socket编程提供了一种简单高效的网络通信模型,可以灵活地实现通信双方的信息交互。
通过socket编程,可以轻松地实现客户端和服务端之间的连接和数据传输,方便快捷地实现远程操作。
另外,socket编程还支持不同协议的通信,例如TCP和UDP。
TCP协议基于连接的方式进行数据传输,保证了数据的可靠性和完整性,适用于需要确保数据传输的完整性和可靠性的场景。
而UDP协议无连接,传输速度快,适用于对实时性要求较高的场景。
通过socket编程,可以根据实际需求选择合适的通信协议,满足不同场景下的通信要求。
在实际的开发中,我还遇到了一些挑战和问题。
首先,socket编程需要对网络通信原理和编程技术有一定的了解和掌握。
特别是在处理并发通信和网络阻塞等问题时,需要考虑线程和进程的管理、数据的同步等复杂的并发编程问题。
此外,网络传输中可能会遇到丢包、延时等问题,需要在编程中合理处理这些问题,保证通信的可靠性和实时性。
为了解决这些挑战和问题,我采取了一些有效的方法和策略。
首先,我不断学习和提高自己的网络编程水平,熟悉常用的网络编程库和工具,例如Python中的socket模块和Twisted框架等,掌握网络通信的基本原理和编程技巧。
其次,我积极参与开源项目和技术社区,与其他开发者交流和分享经验,从他人的实践中吸取经验和教训,进一步提升自己的技术水平。
此外,我还注重实践和实际应用,通过编写各种网络应用和服务,不断提升自己的实践能力和解决问题的能力。
在实际开发中,我经常遇到不同主机之间的通信需求,通过使用socket编程,我成功地实现了像消息推送、分布式计算、远程控制等各种功能,有效提升了系统的性能和可扩展性。
socket跨主机通信原理

socket跨主机通信原理Socket跨主机通信原理Socket是一种用于实现网络通信的编程接口,它能够实现在不同主机之间的数据传输。
在计算机网络中,主机是指与网络相连的计算机设备,通过Socket可以实现主机之间的通信,包括数据的发送和接收。
Socket跨主机通信的原理是通过TCP/IP协议栈来实现的。
TCP/IP 协议栈是一组协议的集合,包括网络层的IP协议和传输层的TCP协议。
在Socket通信中,通过TCP/IP协议栈将数据分成小块进行传输,然后再在接收端将这些小块重新组装成完整的数据。
在Socket跨主机通信中,有两个关键的概念:服务器和客户端。
服务器是指提供网络服务的主机,而客户端是指使用这些网络服务的主机。
服务器和客户端之间通过Socket建立连接,进行数据的传输。
Socket跨主机通信的过程可以分为以下几个步骤:1. 服务器端启动:服务器端首先需要启动,并监听指定的端口。
端口是一个数字,用于标识不同的网络服务。
服务器端通过监听指定的端口来等待客户端的连接请求。
2. 客户端连接:客户端需要知道服务器的IP地址和端口号才能连接到服务器。
客户端通过指定服务器的IP地址和端口号来建立与服务器的连接。
3. 握手过程:一旦客户端与服务器建立了连接,就会进入握手过程。
握手过程包括三次握手,即客户端向服务器发送连接请求,服务器收到请求后回复确认,最后客户端再次回复确认。
通过握手过程,客户端和服务器建立了可靠的连接。
4. 数据传输:一旦建立了连接,客户端和服务器就可以进行数据的传输。
数据传输可以分为两种方式:面向连接的传输和面向无连接的传输。
面向连接的传输使用TCP协议,保证数据的可靠传输;而面向无连接的传输使用UDP协议,适用于实时性要求较高的场景。
5. 数据接收:在数据传输过程中,接收端会不断接收数据,并进行处理。
接收端会根据接收到的数据进行解析,并根据需要进行相应的处理操作。
6. 连接关闭:当数据传输完成后,客户端和服务器可以选择关闭连接。
Java多线程编程实现socket通信示例代码
Java多线程编程实现socket通信⽰例代码流传于⽹络上有关Java多线程通信的编程实例有很多,这⼀篇还算⽐较不错,代码可⽤。
下⾯看看具体内容。
TCP是Tranfer Control Protocol的简称,是⼀种⾯向连接的保证可靠传输的协议。
通过TCP协议传输,得到的是⼀个顺序的⽆差错的数据流。
发送⽅和接收⽅的成对的两个socket之间必须建⽴连接,以便在TCP协议的基础上进⾏通信,当⼀个socket(通常都是server socket)等待建⽴连接时,另⼀个socket可以要求进⾏连接,⼀旦这两个socket连接起来,它们就可以进⾏双向数据传输,双⽅都可以进⾏发送或接收操作。
UDP是User Datagram Protocol的简称,是⼀种⽆连接的协议,每个数据报都是⼀个独⽴的信息,包括完整的源地址或⽬的地址,它在⽹络上以任何可能的路径传往⽬的地,因此能否到达⽬的地,到达⽬的地的时间以及内容的正确性都是不能被保证的。
⽐较:UDP:1,每个数据报中都给出了完整的地址信息,因此⽆需要建⽴发送⽅和接收⽅的连接。
2,UDP传输数据时是有⼤⼩限制的,每个被传输的数据报必须限定在64KB之内。
3,UDP是⼀个不可靠的协议,发送⽅所发送的数据报并不⼀定以相同的次序到达接收⽅TCP:1,⾯向连接的协议,在socket之间进⾏数据传输之前必然要建⽴连接,所以在TCP中需要连接时间。
2,TCP传输数据⼤⼩限制,⼀旦连接建⽴起来,双⽅的socket就可以按统⼀的格式传输⼤的数据。
3,TCP是⼀个可靠的协议,它确保接收⽅完全正确地获取发送⽅所发送的全部数据。
应⽤:1,TCP在⽹络通信上有极强的⽣命⼒,例如远程连接(Telnet)和⽂件传输(FTP)都需要不定长度的数据被可靠地传输。
但是可靠的传输是要付出代价的,对数据内容正确性的检验必然占⽤计算机的处理时间和⽹络的带宽,因此TCP传输的效率不如UDP⾼。
2,UDP操作简单,⽽且仅需要较少的监护,因此通常⽤于局域⽹⾼可靠性的分散系统中client/server应⽤程序。
Java原生Socket通信机制
Java原⽣Socket通信机制Socket概述 Java的⽹络编程主要涉及到的内容是Socket编程。
Socket,套接字,就是两台主机之间逻辑连接的端点。
TCP/IP协议是传输层协议,主要解决数据如何在⽹络中传输,⽽HTTP是应⽤层协议,主要解决如何包装数据。
Socket是通信的基⽯,是⽀持TCP/IP协议的⽹络通信的基本操作单元。
它是⽹络通信过程中端点的抽象表⽰,包含进⾏⽹络通信必须的五种信息:连接使⽤的协议、本地主机的IP地址、本地进程的协议端⼝、远程主机的IP地址、远程进程的协议端⼝。
应⽤层通过传输层进⾏数据通信时,TCP会遇到同时为多个应⽤程序进程提供并发服务的问题。
多个TCP连接或多个应⽤程序进程可能需要通过同⼀个TCP协议端⼝传输数据。
为了区别不同的应⽤程序进程和连接,许多计算机操作系统为应⽤程序与TCP/IP协议交互提供了套接字(Socket)接⼝。
应⽤层可以和传输层通过Socket接⼝,区分来⾃不同应⽤程序进程或⽹络连接的通信,实现数据传输的并发服务。
Socket,实际上是对TCP/IP协议的封装,Socket本⾝并不是协议,⽽是⼀个调⽤接⼝(API),通过Socket,我们才能使⽤TCP/IP协议。
实际上,Socket跟TCP/IP协议没有必然的关系,Socket编程接⼝在设计的时候,就希望也能适应其他的⽹络协议。
所以说,Socket的出现,只是使得程序员更⽅便地使⽤TCP/IP协议栈⽽已,是对TCP/IP协议的抽象,从⽽形成了我们知道的⼀些最基本的函数接⼝,⽐如create、listen、accept、send、read和write等等。
⽹络有⼀段关于socket和TCP/IP协议关系的说法⽐较容易理解: “TCP/IP只是⼀个协议栈,就像操作系统的运⾏机制⼀样,必须要具体实现,同时还要提供对外的操作接⼝。
这个就像操作系统会提供标准的编程接⼝,⽐如win32编程接⼝⼀样,TCP/IP也要提供可供程序员做⽹络开发所⽤的接⼝,这就是Socket编程接⼝。
java实现两台电脑间TCP协议文件传输
java实现两台电脑间TCP协议⽂件传输记录下之前所做的客户端向服务端发送⽂件的⼩项⽬,总结下学习到的⼀些⽅法与思路。
注:本⽂参考⾃《⿊马程序员》视频。
⾸先明确需求,在同⼀局域⽹下的机器⼈A想给喜欢了很久的机器⼈B发送情书,但是机器⼈B事先并不知道⼩A的⼼思,那么作为⽉⽼(红娘)该如何帮助他们呢?然后建⽴模型并拆分需求。
这⾥两台主机使⽤⽹线直连,在物理层上确保建⽴了连接,接下来便是利⽤相应的协议将信息从电脑A传给电脑B。
在这⼀步上,可以将此过程抽象为⽹络+I/O(Input、Output)的过程。
如果能在⼀台电脑上实现⽂件之间的传输,再加上相互的⽹络协议,羞涩的A不就可以将情书发送给B了吗?因此要先解决在⼀台电脑上传输信息的问题。
为了在⽹络上传输,使⽤必要的协议是必要的,TCP/IP协议簇就是为了解决计算机间通信⽽⽣,⽽这⾥主要⽤到UDP和TCP两种协议。
当⼩A可以向⼩B发送情书后,⼜出现了众多的追求者,那么⼩B如何去处理这么多的并发任务呢?这时便要⽤到多线程的技术。
因此接下来将分别介绍此过程中所⽤到了I/O流(最基础)、⽹络编程(最重要)、多线程知识(较重要)和其中⼀些⼩技巧。
⼀、I/O流I/O流⽤来处理设备之间的数据传输,Java对数据的传输通过流的⽅式。
流按操作数据分为两种:字节流与字符流。
如果数据是⽂本类型,那么需要使⽤字符流;如果是其他类型,那么使⽤字节流。
简单来说,字符流=字节流+编码表。
流按流向分为:输⼊流(将硬盘中的数据读⼊内存),输出流(将内存中的数据写⼊硬盘)。
简单来说,想要将某⽂件传到⽬的地,需要将此⽂件关联输⼊流,然后将输⼊流中的信息写⼊到输出流中。
将⽬的关联输出流,就可以将信息传输到⽬的地了。
Java提供了⼤量的流对象可供使⽤,其中有两⼤基类,字节流的两个顶层⽗InputStream与OutputStream;字符流的两个顶层⽗类Reader 与Writer。
这些体系的⼦类都以⽗类名作为后缀,⽽⼦类名的前缀就是该对象的功能。
java socket 实现原理
java socket 实现原理
Java的Socket是一种用于网络通信的编程接口。
它基于
TCP/IP协议,通过在不同计算机之间建立连接,实现了进程
之间的通信。
在Java中,Socket通信包括客户端和服务器端两个角色。
客
户端通过创建一个Socket对象来发起连接,服务器端通过创
建一个ServerSocket对象来监听连接请求。
具体实现原理如下:
1. 客户端创建一个Socket对象,指定服务器的IP地址和端口号。
Socket对象会封装了TCP/IP协议的相关信息,如IP地址
和端口号等。
2. 客户端通过Socket对象的connect()方法发起连接请求,向
服务器发送一个特定格式的数据包。
3. 服务器端创建一个ServerSocket对象,绑定到指定的IP地
址和端口号上。
4. 服务器端通过ServerSocket对象的accept()方法监听来自客
户端的连接请求。
当有连接请求到达时,accept()方法会返回
一个新的Socket对象,用于和客户端进行通信。
5. 客户端和服务器端通过各自的Socket对象进行数据的收发。
客户端通过输出流向服务器发送数据,服务器通过输入流接收
客户端发送的数据;服务器通过输出流向客户端发送数据,客户端通过输入流接收服务器发送的数据。
6. 当通信完成后,可以通过关闭Socket对象来结束连接。
通过以上步骤,客户端和服务器端能够通过Socket对象实现双向的数据传输。
Socket提供了简单、灵活和高效的网络通信方式,广泛应用于各种应用场景中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河南理工大学 计算机科学与技术学院 课程设计报告
200 8 — 200 9 学年第 一 学期
课程名称 计算机网络 设计题目 利用Java socket实现双机通信 学生姓名 李 飞 学 号 ************ 专业班级 计算机本07-2班 指导教师 刘沛骞
2008 年 9 月 13 日 计算机网络课程设计
- 2 - 目 录
摘要 .................................................................................................................................................... - 3 - 1 理论基础 ........................................................................................................................................ - 3 - 1.1 套接字通信 .............................................................................................................................. - 3 - 1.2 JAVA SOCKETS编程概述: ......................................................................................................... - 4 - 1.3 JAVA 有关概 ............................................................................................................................. - 4 - 1.3.1 Java中输入/输出流概念 ................................................................................................ - 4 - 1.3.2 Java语言 ......................................................................................................................... - 5 - 1.3.3与Socket有关的java类: ........................................................................................... - 6 -
2客户机/服务器通信的实现: ....................................................................................................... - 7 - 2.1服务器端的开发 ....................................................................................................................... - 7 - 2.2客户端的开发 ........................................................................................................................... - 8 -
3程序的实现 ..................................................................................................................................... - 8 - 3.1服务器端的实现 ....................................................................................................................... - 8 - 3.1.1 .......................................................................................................................................... - 8 -
3.1.2代码如下 ......................................................................................................................... - 8 -
3.1.3运行结果: ..................................................................................................................... - 9 -
3.2客户端的实现: ..................................................................................................................... - 10 - 3.2.1 ........................................................................................................................................ - 10 -
3.2.2代码如下: ................................................................................................................... - 10 -
3.2.3运行结果如下: ............................................................................................................ - 11 -
4打包发布 ........................................................................................................................................ - 11 - 结束语……………………………………………………………………-12- 参考文献…………………………………………………………………-12- 计算机网络课程设计
- 3 - 利用Java Sock实现双机通信
摘要:Socket(套接字)是一种基于TCP/IP的编程接口。它采用客户/服务器通信机制,使客户端和服务器端通过Socket接口在网络上实现连接和数据交换。它提供了一系列系统调用,使用户可以方便地实现TCP和UDP等多种网络协议的通信。它使用户可以在网络协议上工作而不必对该网络协议有非常深入的了解。这样编写的程序可被迅速移植到任何支持Socket的网络系统中去。 本文通过主要利用Java Socket来实现双机通信,实现一个简单的服务器,客户端聊天通信工具。并对Java Socket的实现进行简单的分析和讲解,通过本文以达到对Socket的原理又一个较清晰的认识。 关键词:套接字、 SocketServer类、客户机/服务器模式
1 理论基础
1.1 套接字通信 套接字(Socket)是网络通信的基本单元操作,又被称作端口,通常用来实现客户方向和服务器的连接。网上的两个程序通过一个双向的通信连接实现数据的交换,在实现双向通信前链路的每一个端都建立一个Socket,通过对Socket的读/写操作实现网络通信功能。套接字是网络通信的一个标准。套接字分为以下三种类型:
(1)流套接字 这是最常用的套接字类型,TCP/IP协议中的TCP协议用此类接口,它提供面向连接的(建立虚电路),无差错的、发送先后顺序一致的,包长度不限和非重复的网络信包传输。 (2)数据报套接字 TCP/IP协议族中的UDP协议使用此类接口,它是无连接的服务,以独立的信包进行网络传输,信包最大长度为32KB,传输不保证顺序性、可靠性和无重复性,它通常用于单个报文传输或可靠性不重要的场合。 (3)原始数据包套接字 提供对网络下层通信协议的直接访问,它一般不是提供给普通用户的,主要用于开发新的协议或者用于协议教隐蔽的功能。 所有Socket通信程序的基本结构都是一样的,主要有创建Socket、打开连接到Socket的输入流和输出流、按照一定的协议对Socket进行读写操作。关闭Socket这四个步骤,计算机网络课程设计 - 4 - 通过这四个步骤可以完成一般的Socket通信。
1.2 JAVA Sockets编程概述: 用Java语言编程实现Socket通信,其原理与使用其他语言基本相同,不同之处是:(1)java是跨平台的编程语言,所以用java编写的Socket通信程序可以工作在所有支持TCP/IP协议和java的软硬件平台上;(2)因为Java是面向对象的语言,所以在编程中需要使用一些与Socket有关的系统类,其中用于实现流Socket的类主要有:InetAddress类,Socket类,ServerSocket类。 InetAddress类的对象用来保存IP地址,Socket类的对象用来创建Socket通信的客户端,Socket通信的服务器端则有ServerSocket类的对象来实现,用上述几个类就可以很方便的生成用户自己的TCP/IP通信程序。这几个类都属于Java.net包,大部分用来处理网络操作的系统类都包含在这个包中,所以用JAVA编写程序是,一般要在程序开始部分用import语句加载这个包,以便引入这些类。用JAVA语言编写Socket程序的过程就是创建和定义Socket类和ServerSocket类的子类的过程。