Java 编程:TCP 和 UDP 的一些简单应用
网络编程中最重要的就是 SOCKET,它其实也就是监听端口的原理。和我们用手机发短信
的原理应该是大致无二(我是这样理解的),而 JAVA
“
”
最出色的一点也就是 无痛苦连网 。
“
”
“
网络最基本的精神就是让两台机器连接起来, 被呼叫的一方 也就是服务器,而 找
”
人的一方 则叫做客户机,所以说在连接中服务器、客户机也就是一个相对的概念了。而我
们对机器的标识主要是通过 IP 地址和端口来区分的。
“
”
传输控制协议 TCP
“
”
和 用户数据报协议 是两种不同的协议,JAVA 对这两种协议的
支持基本是一致的,而它们本身最大的区别也就是发送的可靠性和速率,前者相比后者
是可靠协议,后者当然是速度快得多了,下面我们分别用两个 SOCKET 下演示:
eg1:
//Clients.java
import java.io.*;
import java.net.*;
public class Clients
{
public static void main(String[] args) throws Exception
{
InetAddress addr = InetAddress.getByName(null);
Socket socket = new Socket(addr,2000);
PrintWriter out =
new PrintWriter(
new BufferedWriter(
new OutputStreamWriter(
socket.getOutputStream())),true);
byte[] b = new byte[2048];
String msg = new String(b,0,System.in.read(b));
out.println(msg);
socket.close();
}
}
//Servers.java
import java.io.*;
import java.net.*;
public class Servers
{
public static void main(String[] args) throws Exception
{