20165233 2017-2018-2 《Java程序设计》第九周学习总结

教材学习内容总结

  • 基础

     - URL类:java.net包中的URL类是对统一资源定位符的抽象,使用URL创建对象的应用程序称作客户端程序,客户端程序的URL对象调用InputStream openStream() 方法可以返回一个输入流,该输入流指向URL对象所包含的资源,通过该输入流可以将服务器上的资源信息读入到客户端。
    - InetAddress类
  • 重点(实用):套接字

     - 网络套接字是基于TCP协议的有连接通信
    - 套接字连接就是客户端的套接字对象和服务器端的套接字对象通过输入流、输出流连接在一起
    - 服务器建立ServerSocket对象,ServerSocket对象负责等待客户端请求建立套接字连接,而客户端建立Socket对象向服务器发出套接字连接请求。
  • 了解:UDP数据报,广播数据报

  • 难点:Java远程调用(RMI)

     - RMI是一种分布式技术,使用RMI可以让一个虚拟机上的应用程序请求调用位于网络上另一处虚拟机上的对象方法。

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

  • 问题1:教材396页中,在URL的构造方法那部分,地址为什么写对了也可能发生异常?
  • 问题1解决方案:通过微课老师讲解可知,由于网络不通,地址不合理,格式不正确等多种原因可导致发生异常。
  • 问题2:从套接字连接中读取数据与从文件中读取数据有何不同?
  • 问题2解决方案:通过教材中的讲解可知,尽管二者都是都是输入流,但从文件中读取数据时,所有数据都已经在文件中了;而使用套接字连接时,可能在另一端数据发送之前,就已经开始读取了,这时,就会堵塞本线程,直到该读取方法成功读取到信息,本线程才继续执行后续的操作。

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

  • 问题1:在运行教材的代码一开始出现了如下图所示的问题?

  • 问题1解决方案:这是由于没有设置output的路径。解决过程如下:

1、在Modules设置里勾选Inherit project compile path

2、设置Project中的Project compiler output,选择“Project的路径”+”\out”

这样就可以解决这个问题。

  • 问题2:教材402页例子3中,为什么在运行服务器时,没有显示问题的答案就直接跳出“客户已断开”的提示呢?
  • 问题2解决方案:由于客户端需要在服务器运行之前就开始运行。客户端运行后,会在第一个问题出来后被阻塞,服务器运行后收到回答便能正常运行直到结束。

代码托管

上周考试错题总结

  • 错题1:进程的基本状态有:新建、运行、阻塞、死亡。

原因:教材中讲解的进程的四个状态是:新建、运行、中断、死亡。我查找网络上则是5个状态:创建、就绪、执行、阻塞、终止。所以有些混淆。

理解情况:阻塞与中断应该是类似的状态。

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

本周学习内容中13章的内容,自我感觉Java网络编程这部分知识还是比较难掌握的。在看微课时,就会引出许多问题,比如“从套接字连接中读取数据与从文件中读取数据有何不同?”,或者是明白ServerSocket对象与服务器连接的原理与示意图,但是很难写出对应的代码,有些无从下手,这些方法与异常处理又出现多种情况,细节很多,在做课下测试题时也感觉比较吃力,还得多敲代码进行相应的练习才能慢慢理解代码编写的过程。

20165233 2017-2018-2 《Java程序设计》第九周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第九周学习总结

    1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2.书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什 ...

  2. 20145220java程序设计第九周学习总结

    20145220java程序设计第九周学习总结 教材学习内容总结 JBDC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商对接口直接操作,开发人员无须接触底层数据可驱动程序的差异 ...

  3. 201771010134杨其菊《面向对象程序设计java》第九周学习总结

                                                                      第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...

  4. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  5. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  6. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  7. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  8. 马凯军201771010116《面向对象与程序设计Java》第九周学习总结

    一.理论知识部分 异常.日志.断言和调试 1.异常:在程序的执行过程中所发生的异常事件,它中断指令的正常执行. 2.Java的异常处理机制可以控制程序从错误产生的位置转移到能够进行错误处理的位置. 3 ...

  9. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  10. 《Java》第九周学习总结

    下载mysql 选择mysql的管理软件 idea可以直接连接 然后用库运行程序,但是没有截图,,因为想在navicat上试试,可惜速度太慢了 打开idea又很慢,所以明天再更新

随机推荐

  1. opencv-python教程学习系列5-处理鼠标事件

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv-python处理鼠标事件,坚持学习,共同进步. 系列教程参照OpenCV-Pytho ...

  2. Ajax和SpringMVC之间JSON交互

    Ajax和SpringMVC之间的json数据传输有两种方式: 1.直接传输Json对象 2.将Json序列化成json字符串 1.直接传输Json对象 前端Ajax $(document).read ...

  3. ElasticSearch(七):ElasticSearch集群的搭建

    由于资源有限,使用是一台机器上安装三个elasticSearch服务端组成的集群. 1. 安装elasticSearch6.3.2 将原本安装的elasticSearch6.3.2复制两份,分别重新命 ...

  4. JSONObject JSONArray json字符串 HashMap ArryList 在java开发中用到的数据结构

    1.JSONObject  长成这样的:   { "key1":value1, "key2":value2, "key3":value3} ...

  5. CentOS升级Python2.6到Python2.7并安装pip

    原文:http://ruter.sundaystart.net/2015/12/03/Update-python/ 貌似CentOS 6.X系统默认安装的Python都是2.6版本的?平时使用以及很多 ...

  6. IPv6调用java后端接口报错:java.net.SocketException: Protocol family unavailable

    目前需求是java后端的接口需要支持IPv6.先确认linux机器已经绑定了IPv6: CMREAD-SV43 apache-tomcat/bin> ifconfig eth0 Link enc ...

  7. R(2) sample

    sample: 从整体中挑出部分样本数据函数 Usage: sample.int(n, size = n, replace = FALSE, prob = NULL) x:可以是R中任何​对象 siz ...

  8. Linux内核编译:很少有人提及的一些内容

    1. 你可以使用O=参数将编译结果放到其他位置(非源代码目录),例如:make O=~/build ... 这样做的好处是你的源代码目录不会受到任何改变:你甚至可以在不同的体系结构间共享源代码. 注意 ...

  9. 《Wrox.Professional.Hadoop.Solutions》中文目录全稿

    前言:最近有朋友给推荐一本书,英文原版<Wrox.Professional.Hadoop.Solutions>,感觉很好打算翻译成中文,共享给朋友,时间关系,不知能否成行,先干着吧.以下部 ...

  10. HDFS高级开发培训课程之HDFS开发实例课件

    前言: 刚刚完成的HDFS高级开发培训课程课件中的一个章节,不知道PPT,如何导出HTML格式,只好批量导出图片,贴图了. 连接管理:建立连接.断开连接.设置连接参数 文件操作:浏览文件.上传文件.下 ...