中国长城计算机深圳股份有限公司11月招聘面试题162道2020111

下面关于引用的说法错误的是()。

A、引用是被引用对象的别名

B、对引用的修改就是对被引用对象的修改,反之亦然

C、引用不一定立即初始化

D、引用不能建立数组


参考答案:C


下列对引用的陈述中错误的是()。

A、每一个引用都是其所引用对象的别名,因此必须初始化;

B、形式上针对引用的操作实际上作用于它所引用的对象;

C、一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行;

D、不需要单独为引用分配存储空间。


参考答案:B


______是面向对象程序设计语言中的一种机制,这种机制实现了方法的定义与具体的对象无关,而方法的调用则可以关联于具体的对象。

A.继承(Inhertance)

B.模板(Template)

C.动态绑定(Dynamic Binding)

D.对象的自身引用(Self-Reference)


正确答案:C
解析:继承是父类和子类之间共享数据和方法的机制。这是类之间的一种关系,在定义和实现一个类(子类)的时候,可以在一个已经存在的类(父类)的基础上进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
  动态绑定(Dynamic Binding)是建立在函数调用(Method Call)和函数本体(Method Body)的关联。绑定动作在执行期(Run-time)才根据对象类型而进行,这就是所谓的动态绑定,也称后期绑定(LateBinding)。


以下关于面向对象方法的描述中,错误的是( )。 A.对象是由属性和操作组成的,其属性反映了对象的数据信息特征 B.对象可以按其属性来归类,子类可以通过泛化机制获得其父类的特性 C.一个对象就构成一个严格模块化的实体,在系统开发中可被共享和重复引用 D.对象之间的联系是通过消息传递机制来实现


正确答案:B
面向对象方法的基本思想如下。①客观事物是由对象组成的,对象是在原事物基础上抽象的结果。
②对象是由属性和操作组成的,其属性反映了对象的数据信息特征,而操作则用来定义改变对象属性状态的各种操作方式。
③对象之间的联系是通过消息传递机制来实现,而消息传递的方式是通过消息传递模式和方法所定义的操作过程来完成的。
④对象可以按其属性来归类,借助类的层次结构,子类可以通过继承机制获得其父类的特性。⑤对象具有封装的特性,一个对象就构成一个严格模块化的实体,在系统开发中可被共享和重复引用,达到软件(程序和模块)复用的目的。


下列哪种情况不会导致Python对象的引用计数增加()

A.对象被创建

B.被作为参数传递给函数

C.成为容器对象的元素

D.该对象无法访问时


正确答案:D


中国长城计算机深圳股份有限公司11月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:大数据的文件读取?可用的回答 : 1. 利用生成器generator 2. 迭代器进行迭代遍历:for line in file 问题 Q2:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出; 队列和堆栈可以用数组来实现,也可以用链表实现。 问题 Q3:Python是如何进行内存管理的?可用的回答 : 从三个方面来说,一对象的引用计数机制,二垃圾回收机制,三内存池机制 一、对象的引用计数机制 Python内部使用引用计数,来保持追踪内存中的对象,所有对象都有引用计数。 引用计数增加的情况: 1,一个对象分配一个新名称 2,将其放入一个容器中(如列表、元组或字典),引用计数减少的情况: 1,使用del语句对对象别名显示的销毁 2,引用超出作用域或被重新赋值 sys.getrefcount( )函数可以获得对象的当前引用计数 多数情况下,引用计数比你猜测得要大得多。对于不可变数据(如数字和字符串),解释器会在程序的不同部分共享内存,以便节约内存。 二、垃圾回收 1,当一个对象的引用计数归零时,它将被垃圾收集机制处理掉。 2,当两个对象a和b相互引用时,del语句可以减少a和b的引用计数,并销毁用于引用底层对象的名称。然而由于每个对象都包含一个对其他对象的应用,因此引用计数不会归零,对象也不会销毁。(从而导致内存泄露)。为解决这一问题,解释器会定期执行一个循环检测器,搜索不可访问对象的循环并删除它们。 三、内存池机制 Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。 1,Pymalloc机制。为了加速Python的执行效率,Python引入了一个内存池机制,用于管理对小块内存的申请和释放。 2,Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的malloc。 3,对于Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。 问题 Q4:简述 三次握手、四次挥手的流程?可用的回答 : 三次握手: 初始状态:客户端A和服务器B均处于CLOSED状态,然后服务器B创建socket,调用监听接口使得服务器处于LISTEN状态,等待客户端连接。(后续内容用A,B简称代替) 1、A首先向B发起连接,这时TCP头部中的SYN标识位值为1,然后选定一个初始序号seq=x(一般是随机的), 消息发送后,A进入SYN_SENT状态,SYN=1的报文段不能携带数据,但要消耗一个序号。 2、B收到A的连接请求后,同意建立连接,向A发送确认数据,这时TCP头部中的SYN和ACK标识位值均为1,确认序号为ack=x+1, 然后选定自己的初始序号seq=y(一般是随机的),确认消息发送后, B进 入SYN_RCVD状态,与连接消息一样,这条消息也不能携带数据,同时消耗一个序号。 3、A收到B的确认消息后,需要给B回复确认数据,这时TCP头部中的ACK标识位值为1, 确认序号是ack=y+1,自己的序号在连接请求的序号上加1,也就是seq=x+1, 此时A进入ESTABLISHED状态,当B收到A的确认回复后,B也进入ESTABLISHED状态, 至此TCP成功建立连接,A和B之间就可以通过这个连接互相发送数据了。 四次挥手: 初始状态:客户端A和服务器B之间已经建立了TCP连接,并且数据发送完成,打算断开连接, 此时客户端A和服务器B是等价的,双方都可以发送断开请求,下面以客户端A主动发起断开请求为例。(后续内 容用A,B简称代替) 1、A首先向B发送断开连接消息,这时TCP头部中的FIN标识位值为1,序号是seq=m,m为A前面正常发送数据最后一个字节序号加1得到的, 消息发送后A进入FNI_WAIT_1状态,FIN=1的报文段不能携带数据,但要消耗一个序号。 2、B收到A的断开连接请求需要发出确认消息,这时TCP头部中的ACK标识位值为1,确认号为 ack=m+1, 而自己的序号为seq=n,n为B前面正常发送数据最后一个字节序号加1得到的, 然后B进入 CLOSE_WAIT状态,此时就关闭了A到B的连接, A无法再给B发数据,但是B仍然可以给A发数据,同时B端通知上方应用层,处理完成后被动关闭连接。 然后A收到B的确认信息后,就进入了 FIN_WAIT_2状态。 3、B端应用层处理完数据后,通知关闭连接, B向A发送关闭连接的消息,这时TCP头部中的FIN和ACK标识位值均为1, 确认号ack=m+1,自己的序号为seq=k,消息发送后B进入LACK_ACK状态。 4、A收到B的断开连接的消息后,需要发送确认消息, 这是这时TCP头部中的ACK标识位值为1,确认号ack=k+1,序号为m+1(因为A向B发送断开连接的消息时消耗了一个消息号), 然后A进入TIME_WAIT 状态,若等待时间经过2MSL后,没有收到B的重传请求, 则表明B收到了自己的确认,A进入CLOSED状态, B收到A的确认消息后则直接进入CLOSED状态。至此TCP成功断开连接。 问题 Q5:什么是Python中的单元测试?可用的回答 :它支持共享设置,自动化测试,测试关闭代码,将测试聚合到集合等。包括unittest,pytest等框架问题 Q6:cookie 和session 的区别?可用的回答 : 1、cookie数据存放在客户的浏览器上,session数据放在服务器上。 2、cookie

以下关于面向对象方法的描述中,错误的是(14)。

A.对象是由属性和操作组成的,其属性反映了对象的数据信息特征

B.对象可以按其属性来归类,子类可以通过泛化机制获得其父类的特性

C.一个对象就构成一个严格模块化的实体,在系统开发中可被共享和重复引用

D.对象之间的联系是通过消息传递机制来实现的


正确答案:B
解析:面向对象方法的基本思想如下。①客观事物是由对象组成的,对象是在原事物的基础上抽象的结果。②对象是由属性和操作组成的,其属性反映了对象的数据信息特征,而操作则用来定义改变对象属性状态的各种操作方式。③对象之间的联系是通过消息传递机制来实现,而消息传递的方式是通过消息传递模式和方法所定义的操作过程来完成的。④对象可以按其属性来归类,借助类的层次结构,子类可以通过继承机制获得其父类的特性。⑤对象具有封装的特性,一个对象就构成一个严格模块化的实体,在系统开发中可被共享和重复引用,达到软件(程序和模块)复用的目的。


是面向对象程序设计语言中的一种机制,这种机制实现了方法的定义与具体的对象无关,而对方法的调用则可以关联于具体的对象。

A.继承

B.模板

C.对象的自身引用

D.动态绑定


正确答案:D
解析:本题考查面向对象程序设计语言中的一些常见技术。继承:这是我们非常熟悉的概念,是子类从父类派生,继承父类的特点并拥有自己新的特点,体现了特殊与一般的关系。模板:是对具有相同特性的函数或类的再抽象,是一种参数化的多态性工具。模板的使用为各种逻辑功能相同而数据类型不同的程序提供一种代码共享的机制。动态绑定:是面向对象程序设计语言中的一种机制,是一种方法的定义与具体的对象无关,而对方法的调用则可以关联于具体的对象的机制。


下述代码执行后,有几个引用变量和几个对象?()对象声明Studentstu(对象)=newStudent(Mike”);对象定义(开辟空间)Studentstua;(声明变量)Stua=stu;

A.2个引用变量,1个对象

B.1个引用变量,1个对象

C.2个引用变量,2个对象

D.1个引用变量,2个对象


参考答案:A


在java中,引用对象变量和对象间有什么关系?()

A.对象与引用变量的有效期不一致,当引用变量不存在时,编程人员必须动手将对象删除,否则会造成内存泄露。

B.对象与引用变量的有效期是一致的,当引用变量不存在时,它所指向的对象也会自动消失。

C.对象与引用变量的有效期是一致的,不存在没有引用变量的对象,也不存在没有对象引用变量。

D.引用变量是指向对象的一个指针。


参考答案:D


在程序运行过程中,(49)将方法与特定的对象动态地联系在一起,使得不同的对象在使用同样的方法时,可以因对象的状态不同而产生不同的行为,从而使得方法对具体的对象具有个性。

A.消息传递机制

B.对象自身引用

C.消息传递机制和对象自身引用

D.参数多态


正确答案:C
解析:对象自身引用(Self-Reference)是OOPL中的一种特有结构。这种结构在不同的OOPL中有不同的名称,在C++和Java中称为this,使用的值通过消息传递机制提供。对象自身引用的值和类型分别扮演了两种意义的角色:对象自身引用的值使得方法体中引用的成员名与特定的对象,及相关对象自身引用的类型决定了方法体被实际共享的范围。对象自身引用机制使得在进行方法的设计和实现时并不需要考虑与对象联系的细节,而是从更高一级的抽象层次也就是类的角度来设计同类型对象的行为特征,从而使得方法在一个类及其子类的范围内具有共性。在程序运行过程中,消息传递机制和对象自身引用将方法与特定的对象动态地联系在一起,使得不同的对象在执行同样的方法体时,可以因对象的状态不同而产生不同的行为,从而使得方法对具体的对象具有个性。

更多 “中国长城计算机深圳股份有限公司11月招聘面试题162道2020111” 相关考题
考题 类也是一个数据类型,可以用它声明对象的引用变量。正确答案:正确

考题 填空题所有的容器对象都具有与之相关的计数属性和()属性。其中前者是一个数值型属性,它表明了所包含对象的数目;后者是一个数组,用以引用每个包含在其中的对象。正确答案:集合解析:暂无解析

考题 对于一个已经不被任何引用变量引用的对象,当垃圾回收器准备回收该对象所占用的内存时,将自动调用该对象的以下哪个方法()A、finalizeB、notifyC、nofityAllD、hashCode正确答案:A

考题 在java中,引用对象变量和对象间有什么关系?()A、对象与引用变量的有效期不一致,当引用变量不存在时,编程人员必须动手将对象删除,否则会造成内存泄露。B、对象与引用变量的有效期是一致的,当引用变量不存在时,它所指向的对象也会自动消失。C、对象与引用变量的有效期是一致的,不存在没有引用变量的对象,也不存在没有对象引用变量。D、引用变量是指向对象的一个指针。正确答案:D

考题 以下关于ASP中对象的说法错误的是______。A.ASP的built-in对象不用产生一个实例就能够直接引用B.ASP的built-in对象需要用server对象的CreatInternalObject方法来产生一个实例才能够引用C.在整个网站应用中内嵌对象的所有方法、集合以及属性都是自动可访问的D.ASP的ActiveX组件需要用server对象的CreatObject方法来产生一个实例才能够引用正确答案:B

考题 对象引用可以用一个同类对象的地址值对它赋值。正确答案:错误

考题 E-R图中的实体集A、B之前为1:*联系,转换为关系模型时,在B实体集中增加A实体集的标识符作外码;而在面向对象数据模型中( )A.在B对象中增加一个引用属性外,对A对象不作任何处理 B.在B对象中增加一个引用属性外,在A对象中增加一组引用属性 C.在A对象中增加一组引用属性外,对B对象不作任何处理 D.在A对象中增加一组引用属性外,在B对象中增加一组引用属性答案:A解析:小编正在快马加鞭来的路上(详见视频讲解)

考题 下述代码执行后,有几个引用变量和几个对象?()   Student stu = new Student(“Mike”);  Student stua;  Stua = stu;  A、 2个引用变量,1个对象B、 1个引用变量,1个对象C、 2个引用变量,2个对象D、 1个引用变量,2个对象正确答案:A

考题 所有的容器对象都具有与之相关的计数属性和()属性。其中前者是一个数值型属性,它表明了所包含对象的数目;后者是一个数组,用以引用每个包含在其中的对象。正确答案:集合

考题 对象自身引用(Self-Reference)是OOPL中的一种特有结构。对象自身引用机制使得在进行方法的设计和实现时并不需要考虑与对象联系的细节,而是从更高一级的抽象层次,也就是类的角度来设计同类型对象的(50)特征,从而使得方法在一个类及其子类的范围内具有共性。A.方法B.行为C.类型D.动态正确答案:B解析:对象自身引用机制使得在进行方法的设计和实现时并不需要考虑与对象联系的细节,而是从更高一级的抽象层次,也就是类的角度来设计同类型对象的行为特征,从而使得方法在一个类及其子类的范围内具有共性。在程序运行过程中,消息传递机制和对象自身引用将方法与特定的对象动态地联系在一起,使得不同的对象在执行同样的方法体时,可以因对象的状态不同而产生不同的行为,从而使得方法对具体的对象具有个性。