面试准备

C++

什么是面向对象
一种编程思想,通过对象来解决问题实现功能,将功能封装到类中,再通过类实例化为对象,提供调用功能的接口。是一种更符合现实,代码复用率更高,安全性更高的方法。

面向对象的三个特性
封装/继承/多态

封装: 将数据和函数封装到对象里,只像使用者提供接口。一是为了隐蔽细节,将设计者和使用者分开;二为了提高代码重用性,类可以有多个实例,多个对象。

继承:子类继承父类的属性和函数,拓展已有的模块,实现代码重用,也更符合现实。

多态:多种状态。多态的实现主要分为静态多态和动态多态,静态多态主要是重载,分为函数重载和运算符重载,在编译的时候就已经确定;动态多态是用虚函数机制实现的,在运行期间动态绑定,在虚继承关系中基类指针会根据指定的派生类对象,去调用相应的方法,相同的基类指针可以指向不同的派生类对象,从而对应不同的方法实现。

函数重载

在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表(参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不同的问题。

为什么可以由子类对象new一个父类对象,反之不行

子类对象继承父类对象,包含父类的成员变量和函数,但可能还要自己的一些扩充。用子类的对象赋值给父类对象,只需要把相应的值赋给父类对象,(切片)。但是父类对象赋值给子类的话会造成子类对象有些访问不到(内存越界)

struct,class,union的区别

首先,union包含多个数据类型,但同一时刻只有其中一个有值,union的大小是最大的数据类型的大小

class和struct在使用上比较相似,但是他们的实现原理是不一样的,另外主要是一些操作时的细节会不同,比如C++结构体内部成员变量及成员函数默认的访问级别是public,而c++类的内部成员变量及成员函数的默认访问级别是private。

计算机网络

TCP三次握手
在这里插入图片描述
使用三次握手的原因:
第一次发送握手请求如果在网络滞留,在收到服务器返回的ACK前会有一段时间,这个时候客户端等待了一个超时重传时间后,可能会再发送一个连接请求;如果没有三次握手机制,可能就会建立起两个连接;在三次握手机制下,第三次握手只在收到第一个ACK时建立,避免了这个问题。

TCP四次挥手
在这里插入图片描述
四次挥手的原因:
客户端发送了 FIN 连接释放报文之后,服务器收到了这个报文,就进入了 CLOSE-WAIT 状态。这个状态是为了让服务器端发送还未传送完毕的数据,传送完毕之后,服务器会发送 FIN 连接释放报文。

TIME_WAIT的原因:
确保最后一个确认报文能够到达。如果 B 没收到 A 发送来的确认报文,那么就会重新发送连接释放请求报文,A 等待一段时间就是为了处理这种情况的发生。(如果A直接CLOSED了,就收不到重传的连接释放请求了)
等待一段时间是为了让本连接持续时间内所产生的所有报文都从网络中消失,使得下一个新的连接不会出现旧的连接请求报文。

TCP滑动窗口

发送窗口内的字节都允许被发送,接收窗口内的字节都允许被接收。如果发送窗口左部的字节已经发送并且收到了确认,那么就将发送窗口向右滑动一定距离,直到左部第一个字节不是已发送并且已确认的状态;接收窗口的滑动类似,接收窗口左部字节已经发送确认并交付主机,就向右滑动接收窗口。

TCP拥塞控制(慢启动、拥塞避免、快重传、快回复)
在这里插入图片描述
在这里插入图片描述
从输入url到显示页面,都经历了什么
一般会经历以下几个过程:

1、首先,在浏览器地址栏中输入url

2、浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第三步操作。

3、在发送http请求前,需要域名解析(DNS解析)(DNS(域名系统,Domain Name System)是互联网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住IP地址。),解析获取相应的IP地址。

4、浏览器向服务器发起tcp连接,与浏览器建立tcp三次握手。(TCP即传输控制协议。TCP连接是互联网连接协议集的一种。)

5、握手成功后,浏览器向服务器发送http请求,请求数据包。

6、服务器处理收到的请求,将数据返回至浏览器

7、浏览器收到HTTP响应

8、读取页面内容,浏览器渲染,解析html源码

9、生成Dom树、解析css样式、js交互

10、客户端和服务器交互

11、ajax查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【优质项目推荐】 1、项目代码均经过严格本地测试,运行OK,确保功能稳定后才上传平台。可放心下载并立即投入使用,若遇到任何使用问题,随时欢迎私信反馈与沟通,博主会第一时间回复。 2、项目适用于计算机相关专业(如计科、信息安全、数据科学、人工智能、通信、物联网、自动化、电子信息等)的在校学生、专业教师,或企业员工,小白入门等都适用。 3、该项目不仅具有很高的学习借鉴价值,对于初学者来说,也是入门进阶的绝佳选择;当然也可以直接用于 毕设、课设、期末大作业或项目初期立项演示等。 3、开放创新:如果您有一定基础,且热爱探索钻研,可以在此代码基础上二次开发,进行修改、扩展,创造出属于自己的独特应用。 欢迎下载使用优质资源!欢迎借鉴使用,并欢迎学习交流,共同探索编程的无穷魅力! 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。
电信5G领域的发展日新月异,因此,准备面试的过程非常重要。以下是我为您提供的关于电信5G招聘的面试准备建议: 1.了解5G技术背景:了解5G的基础知识,包括5G的架构、频段和相关技术等。可以通过阅读相关文献、参加5G培训课程或者了解行业动态来增加对5G的理解。 2.掌握相关技术:掌握相关的通信协议和技术,如LTE、物联网、云计算、大数据分析等。了解这些技术可以帮助您理解5G的实现过程和应用场景。 3.熟悉5G应用场景:了解5G在不同领域的应用场景,如智能交通、智能家居、工业自动化等。可以通过阅读相关案例、参观5G示范基站或者实地考察相关企业来增加对5G应用场景的了解。 4.强调自己的技术能力:在面试过程中,强调自己的相关技能和经验。可以准备一些相关的项目经验或者证书,来证明自己的技术能力。 5.关注5G的发展趋势:了解5G在国内外的发展趋势和政策环境,掌握5G标准的最新变化和5G产业链的发展动态。可以通过阅读相关报道、参加行业活动或者加入相关的社交网络群组来获取相关信息。 6.准备常见问题:面试中往往会问到一些常见问题,如个人介绍、职业规划、工作经验等。提前准备一些答案,以便在面试中更加自信和流利地回答。 最后,面试前可以进行模拟面试,提前准备应对可能的问题,并注意形象仪态。希望以上建议能对您的面试准备有所帮助。祝您面试成功!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值