Java 网络 API

Java 是一种优秀的通用语言。它可能因 Web Applets 而最为出名,但正如本文所示,它具有完整的 GUI 组件,可用于任何类型的应用程序。 近年来,它也作为一种服务器端语言而流行起来,这很大程度上归功于它简化了 C++ 的面向对象编程模型,以及它的可移植性。 举一个例子,Java 的网络 API (java.net) 完全隐藏了标准 UNIX 套接字和 Microsoft 操作系统上使用的异步套接字之间的差异。 此外,构建、打开和从客户端套接字读取数据所需的代码(不包括错误检查)是:

Socket s = new Socket("myhost", 1234);
// DataInputStream ins = new DataInputStream(s.getInputStream());
// BufferedReader is preferable to DataInputStream<\n>
// as of JDK1.1
BufferedReader ins = new BufferedReader(
   new InputStreamReader(s.getInputStream()));
String s;
while ((s = ins.readLine()) != null) {
   // do something with this line of input
}
类似地,可以轻松创建服务器端套接字,绕过创建 sockaddr_in、转换和绑定它的细节
ServerSocket ss = new ServerSocket(1234);
Socket ios;
while (s = ss.accept()) {
   // do I/O on s, which is connected to a<\n>
   // client
}
要从 Web 服务器读取数据,可以节省更多代码
URL darwin = new URL("http://www.darwinsys.com/java");
InputStream ins = darwin.openStream();
// can then construct a DataInputStream or<\n>
// BufferedReader as above
这段代码(同样,省略了错误处理)解析 URL,连接到 URL 的 Web 服务器,并允许您获取一个 Stream 连接以将其内容作为文本读取。 可以使用更详细的调用来处理非文本 URL。

Java 在许多其他领域都提供了类似的 API 经济性。 有关详细信息,请参阅我的 Java 网站 http://www.darwinsys.com/java/ 或 Sun 的 Java 网站 http://java.sun.com/。

© . All rights reserved.