20175209 《Java程序设计》第十一周学习总结
一、教材知识点总结
URL类
构造方法:
public URL(String spec) throws MalformedULRException
public URL(String protocol String host,String file) throws MalformedULRException
InetAddress类
-
获取主机地址
- 静态方法
getByName(String s)
获取包含主机地址的域名和IP地址的对象 pubilc String getHostName()
和public String getHostAddress()
分别获得对象中所含的域名和IP地址
- 静态方法
-
获取本地机地址
- 静态方法
getLocalHost()
获得含本机域名和IP地址的对象
- 静态方法
套接字
UDP数据报
广播数据报
- 广播端和接受端应加入到相同D类IP地址的相同port端口
- 调用
socket.joinGroup(group)
加入相同地址
二、教材学习中的问题和解决过程
-
问题1:运行书上例子13.2时发现运行结果与书上给出的不一致,address_2传递IP地址为参数后,在输出时只输出了IP地址,并未输出域名
-
解决方法:开始时并没有找到问题原因,在网上也没有搜索到相关的解释,自己对代码进行了部分更改,将address_1的参数改为IP地址,address_2的参数改为域名
-
发现结果如下:当传递参数为域名时,输出为“域名/IP地址”的形式,而传递参数为IP地址时,输出为“/IP地址”形式,查阅API文档中的解释为:当传递的参数为IP地址时,仅检查地址格式的有效性
-
问题2:对套接字和UDP数据报的工作过程和涉及到的方法记忆起来比较费力,因此自己对两节得内容做了总结,将他们的关系连接起来。(具体内容在第一部分的图中)
-
问题3:远程调用生成存根时提示问题如下:
-
解决方法:现在版本的Java中已经不再需要通过rmic命令去生成存根,只需要成功编译远程服务器上的应用程序,那么创建远程对象的文件就会自动生成存根
-
问题4:13.6节中的程序,在运行时抛出了各种错误,但代码并未出现问题
-
尝试将这一节中的程序单独放在一个文件夹下,将源文件和生成的class文件放在同一个目录下程序即可正常运行,抛出异常错误的原因是由于IDEA的环境问题,IDEA中将字节码文件放至out文件夹中,并且由于存在package包的原因,在文件的引入和保存时可能会导致抛出错误,将源文件和字节码文件放在一起即可正确完成
三、代码托管
四、脚本运行截图
五、心得体会
这一章的内容虽然篇幅不多,但内容和例子理解起来都要花费部分时间,自己在学习时感到有些混乱,也做了一些总结以便于理解。其中出现的一些问题在网上没有找到相应的解释,也花费了一些时间去自己摸索找寻解决办法,好在最后问题都成功解决。
六、学习进度条
代码行数(累计总数) | 博客量 | 学习时间 | |
---|---|---|---|
目标 | 8000 | 40 | 300 |
第一周 | 19 | 1 | 12 |
第二周 | 309 | 2 | 15 |
第三周 | 740 | 3 | 10 |
第四周 | 1468 | 4 | 10 |
第五周 | 1922 | 8 | 8 |
第六周 | 3290 | 10 | 15 |
第七周 | 4183 | 12 | 10 |
第八周 | 5211 | 15 | 7 |
第九周 | 5745 | 20 | 9 |
第十周 | 7236 | 23 | 9 |
第十一周 | 7941 | 24 | 8 |