关于流对象的顺序有两个问题:
1.
根据IO章节,先启动的流应该后关闭。
但是这一节中,socket.getOutputStream() 是先启动的,pw是后开的,所以在我的理解,应该先关闭pw,再关闭socket。为什么在这里是先关闭socket,后关闭pw?
在我之前学IO的理解,因为pw中嵌套了socket的字节流,所以关闭应该必须先从最外层(也就是pw)开始关,否则会出现错误。
但是这里似乎么有影响,不知道是不是理解错了?
2.
如果不是 有嵌套关系,而是并行关系,比如这里的scanner和其他流对象,是否关闭顺序就没有先后顺序?
感觉UDP这块有点绕,能不能有更好的理解方式
想问一下为什么输出流pw要有写入磁盘的操作
pw.flush()
而输入流br不需要做写入磁盘的操作flush呢?
pw.println(str); pw.flush();
关于上面两行代码有一个问题:
假设是在服务端中的这两行代码,
在讲解I/O的时候,flush说明的是讲输出的内容从内存写入到磁盘中。
在网络编程应用I/O这部分我就不是很理解,为什么还要有写入磁盘的这一个过程?
客户端和服务端的通信,不就是在内存中进行吗?如果要写入磁盘,又要写在哪里?是类似I/O中所讲的,会在本地磁盘中有一个类似txt文件,来存储写入磁盘的内容吗?谢谢
老师,我想问一下,这里使用if(a instanceof Cat2){ Cat2 c = (Cat2) a ; },就没有报错,为啥省略了括号就不能声明变量
通过socket的顺序,和之前将的TCP的三次握手有什么区别?
这里是从服务器ServerSocket开始创建。
但是在讲TCP建立连接的三次握手时,有说的是从客户端发送TCP保文。
为什么这两个开始是从不同的方向?这两个的作用有什么区别?
老师请问一下。我这里是哪里出错了呢?(编不出20个字)
为什么我的是无限循环 明明i小于20了。还一直执行
想问下在URL中,端口数据是否会体现呢?
我记得的之前讲URL时候说,域名后是端口,然后才是要访问的资源文件,但是当时讲的jd.com的例子,这这里讲的baidu.com的例子,都没有在URL中体现出端口数值。
老师我想问一下老师上课用到的能够查类的各种使用方法的那个工具我们能从哪里下载呀~
请问老师该怎么改,
此行代码 预 打印 false
老师 对于服务器端的这个锁有两个不太明白的地方,第一个是如果一直while(true) 然后“abc”.wait的话, 那接收消息的线程不就是类似于一直被wait么
while (true) { synchronized ("abc") { "abc".wait(); pw.println(ChatRoomServer.msg); pw.flush(); } }
还有也是上面同学问的那个,为什么把string msg = br.readline()放到同步块里之后 就没有消息了呢,这个部分的内存分析能画一下么。想不明白呢。
老师 我这个点对点聊天的代码,为啥服务端给客户端能发消息,但是客户端给服务端发送消息却接受不到呢?
点对点.rar
像图片里的这些有参方法和无参方法,是怎么构造出来的?是快捷键还是什么
如果定义有参和无参的构造方法,有什么快捷键呢?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637