http网络协议包
网络协议包
1.网络中传递的信息都是以二进制的形式传递的
2.接收方(浏览器/服务器)在接收信息后,要做的第一件事就是将二进制数据进行编译成文字,图片,视频,命令。。。
3.传递信息数据量往往比较巨大,导致接收方很难在一组连续的二进制中得到数据
4.网络协议包是一组有规律的二进制数据,在这组数据存在了固定的空间,每一个空间专门存放固定的信息,这样接收方在接收了网络协议包之后就可以到固定空间得到对应信息,网络协议包的出现极大降低了接收方接收二进制数据编译的难度
(0000(IP地址)0000(端口号) 0000(资源文件名) 0000)
常见的网络协议
1、FTP网络协议包
2、HTTP网络协议包
http网络协议包
1.基于B/S结构下互联网通信过程中,所有在网络中传递的信息
2.分类:
http请求协议包(在浏览器准备发送请求的时候,负责创建一个http请求协议包)
(浏览器将请求信息以二进制的形式保存在http请求协议包各个空间)
(由浏览器负责将http请求协议包推送到指定服务端计算机)
http响应协议包:(http服务器在定位到被访问的资源文件之后,负责创建一个http响应协议包)
(http服务器将定位文件内容或者文件命令以二进制的形式写入http响应协议包的各个空间)
(由http服务器负责将http响应协议包推送回发起请求的浏览器)
http请求协议包内部空间(背)
1.按照自上而下划分,分为四个空间
2.空间划分:
请求行: 【
url:请求地址(http://www.baidu.com)
method:请求方式(POST/GET)
】
请求头:【
请求参数信息(GET)
】
空白行:【
没有任何内容,起到隔离的作用
】
请求体: 【
请求参数信息(POST)
】
http响应协议包内部结构【背】
1.按照自上而下划分,分为四个空间
2,空间划分:
状态行:【
http状态码
】
响应头: 【
content-type
】
空白行:【
没有任何内容,起到隔离作用
】
响应体:【
可能是被访问资源的内容
可能是被访问的静态资源的命令
可能是被访问的动态资源文件的运行结果
*********都是以二进制的形式************
】
模拟面试
一。重写和重载的区别
1.重载:Java中允许同一个类文件中出现多个方法名相同
但是参数列表不同,这种现象称为重载
要求两个方法和名称要相同,但是参数列表不同(个数不同,参数类型不同,参数类型出现的顺序不同)
目的,让方法在接收不同参数实现不同功能
2.重写:发生在继承过程中,子类对父类方法实现细节进行重新定义
重写方法时,子类不能降低方法访问权限,可以扩大访问权限
由private或final修饰的方法不能被重写
重写方法时,抛出的异常可以是父类方法抛出异常全集,子集,空集
重写方法返回值,可以缩小返回类型返回值,不可以增大返回类型的返回值
二。throw和throws的区别
1.throws:
声明位置:方法名之后
public xoid test1() throws NullPointerException{
}
作用:通知开发人员当前方法在运行(有可能抛出的异常)
携带数据 throws后面携带异常类型,一个throws后面可以携带多个异常类型
调用:当一个方法被throws修饰时,调用方法必须考虑异常捕捉问题
2.throw:
声明位置:方法执行体
public void test(){
throw new RuntimeException();
}
作用:throw是一个命令,执行时抛出一个指定异常的对象
携带数据:throw后面携带异常对象,一个throw一次朱能携带一个异常对象
调用:当一个方法内部存在throw命令时,在调用时可以不考虑异常捕捉问题
三。接口和抽象的区别
1.接口:是一种特殊类文件
作用:制定规则,降低耦合度
使用规则:接口中 的属性,默认都是静态常量属性
接口中方法都是抽象,如果需要定义具体方法的实现,此方法需要default修饰
接口中方法访问权限不能是private
接口与接口之间可以实现多继承,但是接口之间不能相互实现
接口不存在构造方法
2.抽象类:抽象类由abstract修饰
接口类作用降低接口实现类与接口之间实现的难度
使用规则:
抽象类可以声明抽象方法,也可以声明具体的方法
抽象类声明抽象方法必须由子类进行重写
抽象类实现接口时,不需要对接口方法进行重写
抽象类由构造方法,但是不能使用
你先看书小数据库西宁市 开心三星