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. 【c++基础】多个txt文件合并到一个文件的几种方式

    参考 1.windows命令: 2.linux-command; 完

  2. Mac OS 基于 VirtualEnv 的安装 tensorflow 1.3.0

    如果不行的话,就用conda装吧 https://www.jianshu.com/p/d54546ab315e 推荐使用 virtualenv 创建一个隔离的容器, 来安装 TensorFlow. 这 ...

  3. 任务02——安装 Intellj IDEA,编写一个简易四则运算小程序,并将代码提交到 GitHub

    github地址:https://github.com/ErhuoHome/First.git 安装jdk与intellij idea没有太大问题,以前安装过eclipse 在程序方面,由于对真分数的 ...

  4. ubuntu 部署wordPress

    准备 LAMP 环境 1.安装 Apache2 sudo apt-get install apache2 -y 安装好后,您可以通过访问服务器IP地址 x.x.x.x 查看到 “it works” 界 ...

  5. .NET 中使用 Mutex 进行跨越进程边界的同步

    Mutex 是 Mutual Exclusion 的缩写,是互斥锁,用于防止两个线程同时对计算机上的同一个资源进行访问.不过相比于其他互斥的方式,Mutex 能够跨越线程边界. 本文内容 Mutex ...

  6. php取浮点数后两位的方法

    $num = 10.4567; //第一种:利用round()对浮点数进行四舍五入echo round($num,2); //10.46 //第二种:利用sprintf格式化字符串$format_nu ...

  7. BMP、GIF、JPEG、PNG以及其它图片格式简单介绍

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/songjinshi/article/details/37516649 BMP格式 BMP是英文Bit ...

  8. Hadoop 和 Spark 的关系

    Hadoop实质上是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,意味着您不需要购买和维护昂贵的服务器硬件. 同时,Hadoop还会索引和跟踪这些数据 ...

  9. 如何使用button在tab中新建打开一个链接页

    在APPBOX某页中如何使用button按钮打开一个新的链接页.比如说百度.谷歌等 在后台的单击事件中使用以下语句即            string url = "DownloadIma ...

  10. Linux基本权限管理

    一. 文件基本权限 1.   - 文件类型,第一个字符为-,代表是文件类型(-文件      d目录     | 软链接文件) 2.  总共10个字符,2~10 总共9个字符,每三个字符为一组 rw- ...