• 201621123078 《Java程序设计》第13周学习总结


    1. 本周学习总结

    2. 为你的系统增加网络功能(购物车、图书馆管理、斗地主等)-分组完成

    为了让你的系统可以被多个用户通过网络同时使用,需要为你的系统增加网络功能。

    2.1 简述你想为你的系统增加什么网络功能?设计思路是什么?

    Answer:我们系统是想增加能够被远程连接且能够在远程能有被操作的功能,设计思路是通过增加一个ServerThread类,让远程的客户端能够对其进行操作。

    2.2 系统通过网络传递了什么信息?信息的格式是什么?

    Answer:系统是通过网络传递IO流的信息,信息使用字节流InputStream以及OutputStream进行存储,再通过字符流Scanner和PrintWriter进行包装传输。(参考同学)

    2.3 你的网络模块使用了TCP还是UDP技术?模块中的常用类是什么?

    Answer:使用了TCP技术,模块的常用类为Socket和ServerSocket,在程序中使用多线程操作,也有Thread类。

    2.4 截图网络通讯部分的源代码与运行截图,并进行简单说明。

    注意:如果不会编写客户端,可以使用telnet或者**网络调试助手*做客户端。
    Answer:

    运行结果:

    3. 码云与PTA

    3.1 统计本周完成的代码量

    周次 总代码量 新增代码量 总文件数 新增文件数
    1 0 0 0 0
    2 280 280 5 5
    3 530 250 9 4
    4 950 420 15 6
    5 1345 395 20 5
    6 1924 579 26 6
    7 2248 324 31 5
    8 2677 429 36 5
    9 3020 343 42 6
    10 3349 329 48 6
    11 3725 376 54 6
    12 4019 294 58 4
    13 4282 263 62 4

    选做:4. 网络学习指导(以下作业内容均为选做)

    1. 网络基础

    1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同?
    • ping www.baidu.com
    • ping cec.jmu.edu.cn

      Ansewer:
    • 返回结果:所用的时间不同。
    • 原因是IP地址的远近不同,距离越远的时间越长。

    www.baidu.com IP地址所在地:

    cec.jmu.edu.cn IP地址所在地:

    1.2 telnet bbs.newsmth.net,上面这条命令连接的是远程主机的什么端口号?

    Answer:telnet bbs.newsmth.net 命令连接的是远程主机的端口号:23(Telnet默认端口号)

    1.3 telnet cec.jmu.edu.cn 80,尝试回答:你从屏幕看到一些什么内容?返回的内容是不是cec.jmu.edu.cn的主页内容?尝试使用GET /index HTTP/1.0命令,会返回什么?详见实验任务书题目1。

    Answer:
    1.
    2.不是,因为还未发送协议。
    3.

    1.4 启动ConnectionWatcher, 然后启动若干个可以联网的程序(如QQ, telnet,浏览器等),查看本机上有什么程序联网,使用了什么端口?QQ占用了什么端口和那些远程IP进行交互,这些IP分布地在那里?使用了什么协议进行通信?


    1.5 编写网络程序必不可少的几个信息是什么?
    1. 协议
    2. 端口号
    3. 信息的传输方式
    4. IP
    5. 域名

    2. 编写TCP客户端程序

    2.1 参照SocketTest.java编写一个简单的连接远程服务器小程序Client.java,可以接收并显示服务器发送的信息。启动时需要首先在控制台指定远程主机IP与端口号。(截图,出现自己学号)。

    2.2 将程序中的网址改成bbs.newsmth.net,端口号改为23,再次观察返回结果?尝试执行telnet bbs.newsmth.net 23,对比返回结果。

    bbs.newsmth.net 23

    telnet bbs.newsmth.net 23

    Answer:程序中显现的是乱码的形式,没有实现其功能,而对于Telnet可以连接到具体的端口,实现相应的功能。

    2.3 将程序中的网址改成cec.jmu.edu.cn,端口号改为80进一步观察返回结果。没有任何返回结果,为什么?怎么修改代码才能正常显示?选做:为什么会返回乱码?如何解决?

    Answer:因为并未发送协议,需要发送协议之后才能显现出返回结果。

    2.4 启动网络调试助手,将其设置为TCP Server,并启动,如下图所示(作业中不要出现下图)

  • 相关阅读:
    C++之类和对象
    PHP程序设计基础
    PHP函数和MySQL数据库
    HTML语言基础
    文件和目录1(文件属性和权限)
    文件IO
    查找
    使用tcpdump抓包实例
    导入模块的2种方法
    ansible启用sudo执行命令
  • 原文地址:https://www.cnblogs.com/helloLV/p/8059456.html
Copyright © 2020-2023  润新知