10

我正在尝试用 Java 编写一个简单的网络聊天程序。我几乎没有网络经验。我想知道我应该开始查看哪些资源(当然在这里)。

目前最好还是坚持使用核心 Java API。

4

8 回答 8

16

我从 sun 自己的网站上找到了一个很棒的网络和 java 教程:http: //download.oracle.com/javase/tutorial/networking/TOC.html

套接字部分甚至让您编写一个迷你客户端/服务器聊天演示。

于 2008-09-18T18:07:05.023 回答
3

我建议你先学习网络。如果您有时间阅读Tanenbaum 书,这是网络中最大的参考。如果您想快速了解一下,这里有一张路线图:

  • OSI 层
  • UDP 和 TCP/IP
  • 插座
  • 广播和组播
  • 网络安全

然后使用 Java:Socket、ServerSocket、DatagramSocket、RMI 等。

于 2008-09-18T18:17:38.617 回答
2

Nio还是传统方式用ServerSocketSocketjava.net 包

Nio 文档在这里

于 2008-09-18T18:07:27.613 回答
1

Sun 的 Java API 和官方教程可能是您开始学习的最佳场所。

于 2008-09-18T18:07:31.030 回答
1

它比你想象的要简单得多。老实说,我只是开始浏览 nio 包的 javadocs。它们甚至应该包含迷你教程和源代码。

除此之外,java.sun.com 应该到处都是教程。

如果您不了解套接字——我可以向您发送参考资料,但告诉您更容易——套接字是 2 个程序相互通信的一种方式。它们只是一个唯一编号(当与您的 IP 地址结合使用时)为您提供通往程序的唯一路径。因此,如果我在端口(套接字)1000 上“监听”,那么另一个程序连接到端口 1000,连接程序发送的任何内容,监听程序都会接收。

使用较高的端口号(例如,高于 5000),因为有许多程序会分配自己的端口。

这就是您计算机上几乎所有东西的通信方式。

如果 API 仍然令人困惑,您可能需要阅读关于套接字通信的简短介绍。

于 2008-09-18T18:13:39.610 回答
1

这是一个非常基本的、易于阅读的 Java 网络教程:

http://tutorials.jenkov.com/java-networking/index.html

于 2009-12-10T18:51:30.050 回答
0

谷歌是你的朋友。搜索“java socket 编程教程”或类似的东西,你会得到很多结果,包括 zxcv 建议的结果以及这些:

http://www.javaworld.com/javaworld/jw-12-1996/jw-12-sockets.html

http://www.cafeaulait.org/books/jnp/javanetexamples/index.html

于 2008-09-18T18:10:59.710 回答
0

“Head First Java”是一本很棒的初学者书籍,他们提供了有关创建简单聊天程序的教程。

http://oreilly.com/catalog/9780596004651/

于 2008-09-18T18:24:51.440 回答