第九周学习总结

20165227 2018-4 《Java程序设计》第九周学习总结

教材学习内容总结

第十三章

URL类

  • 通常包含三部分信息:协议、地址、资源
  • 协议必须是URL对象所在的Java虚拟机支持的协议;地址必须是能连接的有效的IP地址或域名;资源可以是主机上的任何一个文件
  • 调用InputStream openStream() :返回一个输入流
  • URL类通常使用public URL (String spec) throws MalformedURLException 或者是 public URL (String protocol,String host,String flie) throws MalformedURLException

InetAddress类

  • 获取Internet上主机的地址:使用InetAddress类的静态方法getByName(Strings)
  • 获取本地机的地址:使用InetAddress类的静态方法getLocalHost()

套接字

  • 通过Socket类 建立套接字对象并连接在一起,其构造方法是Socket(String host,int port)host 是服务器的IP地址,port 是一个端口号
  • 使用ServerSocket对象 让客户成功连接到服务器,其构造方法是 ServerSocket(int port)port 是一个端口号
  • 使用accept() 将客户端的套接字和服务器端的套接字连接起来
  • 两个基本原则:服务器应当启动一个专门的线程;客户端和服务器端都需要在一个单独的线程中读取信息

UDP数据报

  • DatagramPacket类 将数据打包,为数据包
  • DatagramPacket(byte data[],int length,InetAddtress address,int port) :含有date数组指定的数据;地址是address,端口号是port的主机上
  • DatagramPacket(byte data[],int offset,int length,InetAddtress address,int port) :包含数组data中从offset开始后的length个字节,地址和端口同上
  • 用不带参数的构造方法DatagramSocket() 创建一个对象,该对象负责发送数据包
  • DatagramSocket mail_out=new DatagramSocket(); 创建对象,然后对象mail_out 使用方法receive(DatagramPacket pack) 接受数据包

Remote接口:要求远程对象必须实现java.rmi 包中的Remote接口,其接口中没有方法,仅仅起到一个标识作用

教材学习中的问题和解决过程

  • 问题1:为什么建立ServerSocket对象时候容易发生IOException异常?
  • 问题1解决方案:因为可能会出现设置的端口被占用的情况,这时候就会出现异常
  • 问题2:套接字到底是如何定义的?
  • 问题2解决方案:网上查找再结合各种资料了解到:套接字

代码调试中的问题和解决过程

  • 问题1:在建立套接字对象的时候,显示出现IOException的异常
  • 问题1解决方案:查询书籍知识点发现,应该用
try{ Socket clientSocket =  new Socket("http://192.168.0.78",2010);
}
catch(IOException e){}

代码托管

上周考试错题总结

  • 上一周的课下测试满分,所以没有错题

其他(感悟、思考等,可选)

这一周的Java学习同上一周的学习的难度来说稍微好些,但是新的概念较多,需要花费更多的时间去记忆消化,在学习新知识的同时还不能忽略之前所学习的知识,需要时常复习才行!

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 210/210 1/1 20/20
第二周 240/450 1/2 18/38
第三周 496/946 1/3 22/60
第四周 624/1570 1/4 30/90
第五周 843/2413 1/5 24/114
第六周 733/3146 1/6 20/134
第七周 628/3774 1/7 21/155
第八周 1103/4877 1/8 30/185
第八周 434/5284 1/9 32/217
posted @ 2018-04-27 23:11  朱越  阅读(193)  评论(0编辑  收藏  举报