为了账号安全,请及时绑定邮箱和手机立即绑定

Java Socket应用---通信是这样练成的

难度初级
时长 2小时 0分
学习人数
综合评分9.77
496人评价 查看评价
9.9 内容实用
9.8 简洁易懂
9.6 逻辑清晰

最赞回答 / Lawrence
getByte是为了把字符串转换成字节数组,然后才能装进packet进行传输啊

最新回答 / 慕慕3484187
字节流都是数字,数字与字符转换对应一定的规则,不同的编码就是对字节转化为字符的不同规则

最赞回答 / HungerCheung
你看的这个章节中:server中仅仅实现了接受来自client的字符串信息的功能,所以在server运行的控制台会显示接收到信息。client中仅仅实现了发送字符串信息的功能,没有接受的功能,所有在它的控制台也就没有信息显示。你继续学习后续这个课程后续的视频,会逐步的完善server和client的功能,到时候client也会显示相应的信息了。望采纳。

最赞回答 / 幕布斯3021265
找到原因来了,问题在于服务器端是用来BufferedReader的readLine函数,这个函数只用在读到换行符的时候才会结束,不然会一直是阻塞的状态。而我这里发送的时候没有加上换行符就会产生阻塞的现象,而我关闭了输出流,就等与强制结束了readLIne函数的进程,所以也能解决问题。

最赞回答 / 慕瓜1454717
ip和端口 是服务器端的,也就是服务器一直在侦听本地的指定的端口,等待客户端的连接请求,客户端访问的是服务器端的地址。服务器没有变,只是多客户端访问,所以IP和端口号不变

最新回答 / 阿Dine
我觉得真正对data数组动手脚的应该是receive方法 会不会是返回一个data数组覆盖了前面定义的数组呢?

最赞回答 / Chieryl
主要是UDP没有连接状态、速度快,但数据容易丢失,TCP有连接状态、速度慢,但数据较安全,一般根据你对程序数据的安全性要求和传输速度权衡。举例如下图<...图片...>
课程须知
本课程是 Java 开发课程的高级课程,需要对 Java 中的面向对象、IO、多线程,以及网络相关知识有一定的基础
老师告诉你能学到什么?
1、网络相关的基础知识 2、Java 中网络相关 API 的应用 3、实现基于 TCP 的 Socket 编程 4、实现基于 UDP 的 Socket 编程

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消