第10周学习总结

20145339顿珠达杰 Java第10周学习总结

教材学习内容总结

  • 网络编程 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输。
  • 计算机网络 路由器和交换机组成了核心的计算机网络,计算机只是这个网络上的节点以及控制等,经过光纤、网线等链接将设备链接起来,从而造成了一张巨大的计算机网络。
  • 共享 网络最主要的优点在于共享:共享设备和数据,如今共享设备最多见的是打印机。
  • IP地址 对于网络编程来讲,最主要的是计算机和计算机之间的通讯,这样首要的问题就是如何找到网络上的计算机呢?这就须要了解IP地址的概念。网络中的每一个设备都会有一个惟一的数字标识,这个就是IP地址。在计算机网络中,如今命名IP地址的规定是IPv4协议,该协议规定每一个IP地址由4个0-255之间的数字组成,例如10.0.120.34。每一个接入网络的计算机都拥有惟一的IP地址,这个IP地址多是固定的,也能够是动态的。
  • 域名可是因为IP地址不容易记忆,因此为了方便记忆,有创造了另一个概念——域名(Domain Name),例如sohu.com等。一个IP地址能够对应多个域名,一个域名只能对应一个IP地址。在网络中传输的数据,所有是以IP地址做为地址标识,因此在实际传输数据之前须要将域名转换为IP地址,实现这种功能的服务器称之为DNS服务器,也就是通俗的说法叫作域名解析。IP地址的使用要比域名通用一些。
  • 端口有了端口的概念之后,在同一个计算机中每一个程序对应惟一的端口,这样一个计算机上就能够经过端口区分发送给每一个端口的数据了,换句话说,也就是一个计算机上能够并发运行多个网络程序,而不会在互相之间产生干扰。有了IP地址和端口的概念之后,在进行网络通信交换时,就能够经过IP地址查找到该台计算机,而后经过端口标识这台计算机上的一个惟一的程序。这样就能够进行网络数据的交换了。
  • 网络通信模型 网络通信基于“请求-响应”模型。在网络通信中,第一次主动发起通信的程序被称做客户端(Client)程序,简称客户端,而在第一次通信中等待链接的程序被称做服务器端(Server)程序,简称服务器。一旦通信创建,则客户端和服务器端彻底同样,没有本质的区别。
  • 客户端和服务器端 网络编程中的两种程序就分别是客户端和服务器端。这种网络编程的结构被称做客户端/服务器结构,也叫作Client/Server结构,简称C/S结构;使用浏览器做为客户端的结构被称做浏览器/服务器结构,也叫作Browser/Server结构,简称为B/S结构。总之C/S结构和B/S结构是如今网络编程中常见的两种结构,B/S结构其实也就是一种特殊的C/S结构。P2P程序中既包含客户端程序,也包含服务器端程序。
  • 协议格式 编写协议格式呢?答案是随意。只要按照这种协议格式可以生成惟一的编码,按照该编码能够惟一的解析出发送数据的内容便可。在实际的网络程序编程中,最麻烦的内容不是数据的发送和接收,由于这个功能在几乎全部的程序语言中都提供了封装好的API进行调用。
  • 网络通信的方式 网络通信的方式主要有两种: 在网络通信中,TCP方式就相似于拨打电话,使用该种方式进行网络通信时,须要创建专门的虚拟链接,而后进行可靠的数据传输,若是数据发送失败,则客户端会自动重发该数据。而UDP方式就相似于发送短信,使用这种方式进行网络通信时,不须要创建专门的虚拟链接,传输也不是很可靠,若是发送失败则客户端没法得到。因为TCP须要创建专用的虚拟链接以及确认传输是否正确,因此使用TCP方式的速度稍微慢一些,并且传输时产生的数据量要比UDP稍微大一些。论使用TCP方式仍是UDP方式进行网络通信,网络编程都是由客户端和服务器端组成。
  • 客户端的编程 客户端的编程主要由三个步骤实现:一、 创建网络链接二、 交换数据三、 关闭网络链接
  • 服务器端的编程 服务器端的编程步骤和客户端不一样,是由四个步骤实现,依次是:一、 监听端口二、 得到链接三、 交换数据四、 关闭链接
  • java.net 和网络编程有关的基本API位于java.net包中,该包中包含了基本的网络编程实现,该包是网络编程的基础。该包中既包含基础的网络编程类,也包含封装后的专门处理WEB相关的处理类
  • TCP方式 一个基础的网络类——InetAddress类。该类的功能是表明一个IP地址,而且将IP地址和域名相关的操做方法包含在该类的内部。在Java语言中,对于TCP方式的网络编程提供了良好的支持,在实际实现时,以java.net.Socket类表明客户端链接,以java.net.ServerSocket类表明服务器端链接。
  • 网络编程 在客户端网络编程中,首先须要创建链接,在Java API中以java.net.Socket类的对象表明网络链接,因此创建客户端网络链接,也就是建立Socket类型的对象,该对象表明网络链接,若是创建链接时,本机网络不通,或服务器端程序未开启,则会抛出异常。在Java语言中,数据传输功能由Java IO实现,也就是说只须要从链接中得到输入流和输出流便可,而后将须要发送的数据写入链接对象的输出流中,在发送完成之后从输入流中读取数据便可。先向输出流中写入数据,这些数据会被系统发送出去,而后在从输入流中读取服务器端的反馈信息。
  • 屡次数据交换那 么如何实现创建一次链接,进行屡次数据交换呢?其实很简单,创建链接之后,将数据交换的逻辑写到一个循环中就能够了。这样只要循环不结束则链接就不会被关闭。按照客户端实现的逻辑,也能够复用服务器端的链接,实现的原理也是将服务器端的数据交换逻辑写在循环中便可,
  • UDP方式UDP方式的网络编程也在Java语言中得到了良好的支持,因为其在传输数据的过程当中不须要创建专用的链接等特色,因此在Java API中设计的实现结构和TCP方式不太同样。固然,须要使用的类仍是包含在java.net
相关文章
相关标签/搜索