Java编程那些事儿101——网络编程概述[Java编程]
本文“Java编程那些事儿101——网络编程概述[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
第十三章 网络编程
网络编程关于很多的初学者来说,都是很神往的一种编程技术,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了关于该部份技术的学习.
在学习网络编程从前,很多初学者大概认为网络编程是对比复杂的系统工程,需求理解很多和网络相关的底子知识,其实这些都不是很必须的.首先来问一个问题:你会打手机吗?很多人大概说必定会啊,不就是按按电话号码,拨打电话嘛,很简单的事情啊!其实初学者假如入门网络编程的话也可以做到这么简单!
网络编程就是在两个或两个以上的设备(比方计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,大概接纳到指定的数据,这个就是狭义的网络编程范围.在发送和接纳数据时,大部份的程序计划语言都计划了专门的API实现这些功效,程序员只需求调用便可.所以,底子的网络编程可以和打电话一样简单.
下面就开始Java语言的网络编程技术学习吧.
13.1 网络概述
网络编程技术是当前一种主流的编程技术,随着联网趋向的渐渐加强以及网络利用程序的大量呈现,所以在实际的开辟中网络编程技术得到了大量的利用.本章中以浅显的底子知识阐明和实际的案例使广大初学者可以进入网络编程技术的大门,至于今后的实际修行就要阅读进阶的书籍以及举行大量的实际操练.
13.1.1 计算机网络概述
网络编程的实质就是两个(或多个)设备(比方计算机)之间的数据传输.
按照计算机网络的定义,通过一定的物理设备将处于差别位置的计算机衔接起来构成的网络,这个网络中包含的设备有:计算机、路由器、交换机等等.
其实从软件编程的角度来说,关于物理设备的理解不需求很深化,就像你打电话时不需求很熟习通信网络的底层实现是一样的,但是当深化到网络编程的底层时,这些底子知识是必必要补的.
路由器和交换机构成了核心的计算机网络,计算机只是这个网络上的节点以及掌握等,通过光纤、网线等衔接将设备衔接起来,从而形成了一张宏大的计算机网络.
网络最主要的上风在于同享:同享设备和数据,目前同享设备最常见的是打印机,一个公司普通一个打印机便可,同享数据就是将大量的数据存储在一组机械中,别的的计算机通过网络拜候这些数据,比方网站、银行服务器等等.
假如需求理解更多的网络硬件底子知识,可以阅读《计算机网络》教材,关于底子举行强化,这个在底子学习阶段不是必须的,但是假如想在网络编程范畴有所成就,则是一个必须的基本功.
关于网络编程来说,最主要的是计算机和计算机之间的通信,这样主要的问题就是若何找到网络上的计算机呢?这就需求理解IP地址的概念.
为了可以便利的辨认网络上的每个设备,网络中的每个设备城市有一个唯一的数字标识,这个就是IP地址.在计算机网络中,目前命名IP地址的规定是IPv4协议,该协议规定每个IP地址由4个0-255之间的数字构成,比方10.0.120.34.每个接入网络的计算机都拥有唯一的IP地址,这个IP地址大概是固定的,比方网络上各种各样的服务器,也可以是动态的,比方利用ADSL拨号上网的宽带用户,无论以何种方法得到或能否是固定的,每个计算机在联网今后都拥有一个唯一的合理IP地址,就像每个手机号码一样.
但是由于IP地址不简单记忆,所认为了便利记忆,有创造了别的一个概念——域名(Domain Name),比方sohu.com等.一个IP地址可以对应多个域名,一个域名只能对应一个IP地址.域名的概念可以类比手机中的通讯簿,由于手机号码不便利记忆,所以增添一个姓名标识号码,在实际拨打电话时可以挑选该姓名,然后拨打便可.
在网络中传输的数据,全部是以IP地址作为地址标识,所以在实际传输数据从前需求将域名转换为IP地址,实现这种功效的服务器称之为DNS服务器,也就是通俗的说法叫做域名解析.比方当用户在浏览器输入域名时,浏览器首先恳求DNS服务器,将域名转换为IP地址,然后将转换后的IP地址反馈给浏览器,然后再举行实际的数据传输.
当DNS服务器正常工作时,利用IP地址或域名都可以很便利的找到计算机网络中的某个设备,比方服务器计算机.当DNS不正常工作时,只能通过IP地址拜候该设备.所以IP地址的利用要比域名通用一些.
IP地址和域名很好的办理了在网络中找到一个计算机的问题,但是为了让一个计算机可以同时运行多个网络程序,就引入了别的一个概念——端口(port).
在介绍端口的概念从前,首先来看一个例子,普通一个公司前台会有一个电话,每个员工会有一个分机,这样假如需求找到这个员工的话,需求首先拨打前台总机,然后转该分机号便可.这样削减了公司的开销,也便利了每个员工.在该示例中前台总机的电话号码就相当于IP地址,而每个员工的分机号就相当于端口.
有了端口的概念今后,在同一个计算机中每个程序对应唯一的端口,这样一个计算机上便可以通过端口辨别发送给每个端口的数据了,换句话说,也就是一个计算机上可以并发运行多个网络程序,而不会在彼此之间产生干扰.
在硬件上规定,端口的号码必须位于0-65535之间,每个端口唯一的对应一个网络程序,一个网络程序可以利用多个端口.这样一个网络程序运行在一台计算上时,不管是客户端还是服务器,都是至少占用一个端口举行网络通讯.在接纳数据时,首先发送给对应的计算机,然后计算机按照端口把数据转发给对应的程序.
有了IP地址和端口的概念今后,在举行网络通讯交换时,便可以通过IP地址查找到该台计算机,然后通过端口标识这台计算机上的一个唯一的程序.这样便可以举行网络数据的交换了.
但是,举行网络编程时,只有IP地址和端口的概念还是不够的,下面就介绍一下底子的网络编程相关的软件底子知识.
以上是“Java编程那些事儿101——网络编程概述[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |