• 20165316 第九周学习总结


    20165316《Java程序设计》第九周学习总结

    教材内容学习总结

    URL类

    • URL 类是 java.net 包中的一个重要的类,使用 URL 创建对象的应用程序称为客户端程序。
    • 一个 URL 对象通常包含最基本的三部分信息:协议、地址和资源
    • URL 对象的构造方法:
    public URL (String spec) throws MalformedURLException
    public URL (String protocol, String host, String file) throws MalformedURLException
    
    • URL 对象调用 InputStream openStream() 方法可以返回一个输入流,该输入流指向 URL 对象所包含的资源。

    InetAddress 类

    • java.net 包中的 InetAddress 类对象含有一个 Internet 主机地址的域名和 IP 地址。
    • 使用 InetAddress 类的静态方法 getByName(String s) 将一个域名或 IP 地址传递给该方法的参数 S,获得一个 InetAddress 对象,该对象格式为 <域名>/<IP 地址>
    • 获取域名和 IP 地址
    public String getHostName()
    public String getHostAddress()
    

    套接字

    • 网络通信使用 IP 地址标识 Internet 上的计算机,使用端口号标识服务器上的进程(程序)。
    • 当两个程序需要通信时,他们可以通过使用 Socket 类建立套接字对象并链接在一起
    • Socket 的构造方法是 Socket(String host, int port) ,host 是服务器的 IP 地址,port 是一个端口号,可能发生 IOException 异常。
    • ServerSocket 的构造方法是 ServerSocket(int port),port 是一个端口号。
    • ServerSocket.accept() 方法返回一个和客户端 Socket 对象相连接的 Socket 对象。
    • getOutputStream() 获得的输出流将指向客户端 Socket 对象的输入流,getInputStream() 获得的输入流将指向客户端 Socket 对象的输入流。
    • ServerSocket 对象可以调用 setSoTimeout(int timeout) 方法设置超时值(ms),accept 阻塞时间过长触发 SocketTimeoutException。

    UDP数据报

    • 基于UDP通信的基本模式是:
    1. 将数据打包,称为数据包(好比将信件装入信封一样),然后将数据包发往目的地。
    2. 接受别人发来的数据包(好比接收信封一样),然后查看数据包中的内容。
    • 发送数据包
    1. 用DatagramPacket的以下两个构造方法创建待发送的数据包:
    DatagramPacket(byte data[],int length,InetAddtress address,int port)
    DatagramPack(byte data[],int offset,int length,InetAddtress address,int port)
    
    1. DatagramSocket 类的不带参数的构造方法:
      DatagramSocket()
      创建一个对象,该对象负责发送数据包。例如:
    DatagramSocket  mail_out=new DatagramSocket();
    mail_out.send(data_pack);
    
    • 接收数据包
    1. 用 DatagramSocket 的另一个构造方法 DatagramSocket(int port) 创建一个对象,其中的参数必须和待接收的数据包的端口号相同。
    2. 对象 mail_in 使用方法 receive(DatagramPacket pack) 接受数据包。
    3. 用 DatagramPack 类的另外一个构造方法: DatagramPack(byte data[],int length) 创建一个数据包,用于接收数据包

    广播数据报

    • D 类地址:224.0.0.0~224.255.255.255。
    • 要广播或接收广播的主机都必须加入到同一个 D 类地址。

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

    1. 不太熟悉计算机网络的架构,我们学习的编程大概在 OSI 协议中属于哪个层面?会话层还是表示层?
    2. IP 地址如此重要,为什么在计算机中还可以选择“自动”,计算机的 IP 地址会对程序运行产生影响吗?

    代码托管

    截图如下

    现在才想起来的表格

    代码行数 博客量 学习时间
    5000 20 200
    7061 11 109
  • 相关阅读:
    建表
    第5讲:控制语句
    第4讲:函数
    第1讲:面向对象
    野路子小白安装黑苹果 OpenCore引导 @a.宏万
    野路子学习esp32(十九)ESP32-Arduino 第二篇 智能孵化器 @a.宏万
    野路子学习esp32(十八)ESP32-Arduino 第一篇 @a.宏万
    野路子学习esp32(十七)ESP32-MicroPython OLED AND DHT11 @a.宏万
    野路子学习esp32(十六) MQTT与ESP32-MicroPython @a.宏万
    野路子学习esp32(十五) 1z实验室 EMP项目@a.宏万
  • 原文地址:https://www.cnblogs.com/treebeard123/p/8969106.html
Copyright © 2020-2023  润新知