首页 热点资讯 义务教育 高等教育 出国留学 考研考公

谁能详细说一下数据封装的过程

发布网友 发布时间:2022-04-20 06:04

我来回答

3个回答

懂视网 时间:2022-05-14 13:12

类的另类用法--数据的封装
一般的情况下,如果使用classname::property是不能访问到类的属性的,但可以用classname::method()使用类的方法。同样的也不能用objectname->property访问到类的方法里的变量。利用这一特点,我们可以将一些数据保存于类中,有点象c++的私有属性。
<?
class data {
  function value($var) {
    static $d = array();
    if(func_num_args() > 1) {
      $d[$var] = func_get_arg(1);
    }else {
      return $d[$var];
    }
  }
}
//测试:
data::value("a",1);
data::value("b",2);
echo data::value("a");
echo data::value("b");
?>

热心网友 时间:2022-05-14 10:20

数据封装的过程大致如下:

1、用户信息转换为数据,以便在网络上传输

2、数据转换为数据段,并在发送方和接收方主机之间建立一条可靠的连接

3、数据段转换为数据包或数据报,并在报头中放上逻辑地址,这样每一个数据包都可以通过互联网络进行传输

4、数据包或数据报转换为帧,以便在本地网络中传输。在本地网段上,使用硬件地址唯一标识每一台主机。

5、帧转换为比特流,并采用数字编码和时钟方案

以常见的OSI模型为例,它共分为七层,从下到上依次为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,每层都对应不同的功能。为了实现对应功能,都会对数据按本层协议进行协议头和协议尾的数据封装,然后将封装好的数据传送给下层,各层的数据封装过程如下图所示。

其中在传输层用TCP头已标示了与一个特定应用的连接,并将数据封装成了数据段;网络层则用IP头标示了已连接的设备网络地址,并可基于此信息进行网络路径选择,此时将数据封装为数据包;到了数据链路层,数据已封装成了数据帧,并用MAC头给出了设备的物理地址,当然还有数据校验等功能字段等;到了物理层,则已封装成为比特流,就成为纯粹的物理连接了。

扩展资料

封装 (encapsulation)

隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。

封装途径

封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。

封装在网络编程里面的意思, 当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络,其中每一层对收到的数据都要增加一些首部。

参考资料来源:百度百科-封装

参考资料来源:百度百科-数据封装

热心网友 时间:2022-05-14 11:38

数据封装的过程大致如下:
1.用户信息转换为数据,以便在网络上传输
2数据转换为数据段,并在发送方和接收方主机之间建立一条可靠的连接
3.数据段转换为数据包或数据报,并在报头中放上逻辑地址,这样每一个数据包都可以通过互联网络进行传输
4.数据包或数据报转换为帧,以便在本地网络中传输。在本地网段上,使用硬件地址唯一标识每一台主机。
5.帧转换为比特流,并采用数字编码和时钟方案

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com