sokaoti.com
瀚云科技有限公司7月招聘面试题153道2020711

在J2EE中,对于在Servlet如何获得会话,描述正确的是()。

A.HttpServletRequest类的getSession方法有两个:带参数的getSession方法和不带参数的getSession方法

B.在Servlet中,可以使用HttpSessionsession=newHttpSession()创建session对象

C.如果HttpServletRequest类的getSession方法的参数为false,表示如果没有与当前的请求相联系的会话对象时,该方法返回null

D.如果HttpServletRequest类的getSession方法的参数为true,表示如果没有与当前的请求相联系的会话对象时,该方法返回null


参考答案:A, C


在Python中定义类时实例方法的第一个参数名称不管是什么,都表示对象自身。

此题为判断题(对,错)。


正确答案:√


在面向对象分析过程中,通常用概念模型来详细描述系统的问题域。(35)可用来表示概念模型。

A.构件图

B.对象图

C.配置图

D.类图


正确答案:D
解析:在面向对象分析过程中,用概念模型来详细描述系统的问题域。类图用于描述系统的结构化设计,即用来表示概念模型。它最基本的元素是类或接口,表达了类、接口及它们之间的静态结构和关系。对象图用于展示一组对象及它们之间的关系,用于说明类图中所反映事物实例的数据结构和静态快照,是类图的一个实例。构件图用于描述代码构件的物理结构及各构件之间的依赖关系。用于对源代码、可执行的发布、物理数据库和可调整的系统建模。配置图用于展现运行时处理节点及其构件的部署。它描述系统硬件的物理拓扑结构(包括网络布局和构件在网络上的位置)及在此结构上执行的软件(即运行时软构件在节点中的分布情况)。它说明系统结构的静态部署视图,即说明分布、交付和安装的物理系统。


在面向对象方法中,对象是类的实例。表示对象相关特征的数据称为对象的(31)在该数据上执行的功能操作称为对象的(32);一个对象通过发送(33)来请求另一个对象为其服务。通常把一个类和这个类的所有对象称为类及对象或对象类。在UML中,用来表示显示构成系统的对象类以及这些对象类之间关系的图是(34)。

A.数据变量

B.数据结构

C.属性

D.定义


正确答案:C
解析:在面向对象方法中,对象是类的实例。其中,表示对象相关特征的数据称为对象的属性,在该数据上执行的功能操作称为对象的行为;一个对象通过发送消息来请求另一个对象为其服务。通常把一个类和这个类的所有对象称为类及对象或对象类。在UML中,类图是显示一组类、接口、协作以及它们之间关系的图。类图用于对系统的静态设计视图建模。


面向对象方法可用公式:面向对象方法;对象(11)表示。

A.方法

B.类十继承

C.类+继承+用消息通信

D.类+继承+动态绑定


正确答案:C
解析:概括地说,面向对象方法学具有下述4个要点。(1)把对象(Object)作为融合了数据及在数据上的操作行为的统一的软件构件。面向对象程序是由对象组成的程序中的任何元素都是对象,复杂对象由比较简单的对象组合而成。也就是说,用对象分解取代了传统方法的功能分解。(2)把所有对象都划分成类(Class)。每个类都定义了一组数据和一组操作,类是对具有相同数据和相同操作的一组相似对象的定义。数据用于表示对象的静态属性,是对象的状态信息,而施加于数据之上的操作用于实现对象的动态行为。(3)按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。在类等级中,下层派生类自动拥有上层基类中定义的数据和操作,这种现象称为继承。(4)对象彼此间仅能通过发送消息互相联系。对象与传统数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是数据处理的主体,必须向它发消息请求它执行某个操作以处理它的数据,而不能从外界直接对它的数据进行处理。也就是说,对象的所有私有属性都被封装在该对象内,不能从外界直接访问,这就是通常所说的封装。


瀚云科技有限公司7月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:分布式爬虫主要解决什么问题?可用的回答 : 面对海量待抓取网页,只有采用分布式架构,才有可能在较短时间内完成一轮抓取工作。它的开发效率是比较快而且简单的。 问题 Q2:什么是python模块?Python中有哪些常用的内置模块?可用的回答 :Python模块是包含Python代码的.py文件。此代码可以是函数类或变量。一些常用的内置模块包括:sys、math、os、re、random、time,datatime、json等问题 Q3:什么是PEP 8?可用的回答 :PEP 8是一个编码约定,关于如何编写Python代码更具可读性。问题 Q4:列举面向对象中带双下划线的魔术方法可用的回答 : _doc_ 表示类的描述信息 _module_ 表示当前操作的对象在哪个模块 _class_ 表示当前操作的对象的类是什么 _init_ 构造方法,通过类创建对象时,自动触发执行 _new_负责创建一个类的对象 _del_ 析构方法,当对象在内存中被释放时,自动触发执行 _call_ 对象后面加括号,触发执行 _dict_ 类或对象中的所有成员 _str_如果一个类中定义了_str_方法,那么在打印 对象 时,默认输出该方法的返回 问题 Q5:如何跨模块共享全局变量?可用的回答 :要在单个程序中跨模块共享全局变量,请创建一个特殊模块。在应用程序的所有模块中导入配置模块。该模块将作为跨模块的全局变量提供。问题 Q6:如何在Python中内存管理?可用的回答 :Python内存由Python私有堆空间管理。 所有Python对象和数据结构都位于私有堆中。 程序员无权访问此私有堆,解释器负责处理此私有堆。 Python对象的Python堆空间分配由Python内存管理器完成。核心API提供了一些程序员编写代码的工具。 Python还有一个内置的垃圾收集器,它可以回收所有未使用的内存并释放内存并使其可用于堆空间。问题 Q7:如何删除python数组的值?可用的回答 :可以使用pop()或remove()方法删除数组元素。这两个函数之间的区别在于前者返回已删除的值,而后者则不返回。问题 Q8:Post和get区别?可用的回答 : 1. 请求数据 GET请求,请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式 采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。 POST请求:POST请求会把请求的数据放置在HTTP请求包的包体中。上面的item=bandsaw就是实际的传输数据。 因此,GET请求的数据会暴露在地址栏中,而POST请求则不会。 2、传输数据的大小 在HTTP规范中,没有对URL的长度和传输的数据大小进行限制。但是在实际开发过程中,对于GET,特定的浏览器和服务器对URL的长度有限制。 因此,在使用GET请求时,传输数据会受到URL长度的限制。 对于POST,由于不是URL传值,理论上是不会受限制的,但是实际上各个服务器会规定对POST提交数据大小进行限制,Apache、IIS都有各自的配置。 3、安全性 POST的安全性比GET的高。这里的安全是指真正的安全,而不同于上面GET提到的安全方法中的安全, 上面提到的安全仅仅是不修改服务器的数据。比如,在进行登录操作,通过GET请求,用户名和密码都会暴露再URL上, 因为登录页面有可能被浏览器缓存以及其他人查看浏览器的历史记录的原因,此时的用户名和密码就很容易被他人拿到了。 除此之外,GET请求提交的数据还可能会造成Cross-site requestfrogery攻击。 问题 Q9:说一下Django,MIDDLEWARES中间件的作用?可用的回答 : 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。 问题 Q10:Python中的命名空间是什么?可用的回答 : 在Python中,引入的每个名称都有一个存在的地方,可以被连接起来。这称为命名空间。 它就像一个框,其中变量名称映射到放置的对象。每当搜索到变量时,将搜索此框以获取相应的对象。 算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:合并数组题目描述如下:好像是今日头条2018 秋招算法题?有m名编辑审核文章,每个编辑独立工作,会把觉得有错误的地方通过下标标注出来:1, 10 表示1-10个字符应该有问题。现在要把多名编辑的结果合并起来:1, 10 32, 45,5, 16 78, 94那么合并后是 1, 16 32, 45 78, 94。bug free.Leetcode 中也有两个一样的:https:/ 64%95%.这个更加类似:https:/ InsertInterval.py可做参考的解答如下:class Solution(object): def merge(self, _sentences): :type intervals: ListInterval :rtype: ListInterval _sentences = sorted(_sentences, key=lambda x: x.start) if not _sentences: return result = head = _sentences0.start tail = _sentences0.end length = len(_sentences) for x in range(1, length): i = _sentencesx if tail = i.start: tail = max(tail, i.end) else: result.append(head, tail) head = i.start

以下关于对象、类和继承的叙述中,不正确的是()

A.对象是系统中用来描述客观事务的一个模块,是构成系统的基本单位

B.类是现实世界中实体的形式化描述

C.对象是类的实例,类是对象的模板

D.继承表示对象之间的层次关系


正确答案:D


以下关于面向对象技术的叙述中,说法正确的是(49)。

A.面向对象分析的第一步是定义类和对象

B.面向对象程序设计语言为面向对象用例设计阶段提供支持

C.UML中的构件表示的是物理模块而不是逻辑模块

D.抽象类的主要特征是没有方法


正确答案:C
解析:由于定义服务、确定附加的系统约束及定义类和对象的前提是要确定问题域,因此面向对象分析的第一步是确定问题域。面向对象需求分析阶段、面向对象分析阶段、面向对象用例设计阶段都可以采用建模语言来进行描述,而面向对象程序设计语言主要为面向对象实现阶段提供支持UML中的构件是遵从一组接口并提供一组接口的实现,它是组成系统的一部分,是可替换的。它表示的是物理模块而不是逻辑模块。构件与类处于不同的抽象层次。对象是数据及其操作的封装体。对象的名字、属性和方法是对象的三要素。对象之间的服务请求可通过传递消息来实现。所有对象可以分成为各种对象类,每个对象都定义了一组方法。通常每个类都有实例。没有实例的类称之为抽象类。


下列关于this指针的叙述中,正确的是( )。

A.this指针是一个隐含指针,它隐含于类的成员函数中

B.只有在使用this时,系统才会将对象的地址赋值给this

C.类的友元函数也有this指针

D.this指针表示了成员函数当前操作的数据所属的对象


正确答案:D


关于面向对象概念的描述,正确的是( )。

A.对象包含两个基本要素,分别是对象状态和对象行为
B.如果把对象比作房屋设计图纸,那么类就是实际的房子
C.继承表示对象之间的层次关系
D.多态在多个类中可以定义用一个操作或属性名,并在每一个类可以有不同的实现

答案:D
解析:
面向对象的基本概念包括对象、类、抽象、封装、继承、多态、接口、消息、组件、复用和模式等。
----对象:由数据及其操作所构成的封装体,是系统中用来描述客观事物的一个模块,是构成系统的基本单位。对象包含三个基本要素,分别是对象标识、对象状态和对象行为。
----类:现实世界中实体的形式化描述,类将该实体的属性(数据)和操作(函数)封装在一起。类和对象的关系可理解为,对象是类的实例,类是对象的模板。
----抽象:通过特定的实例抽取共同特征以后形成概念的过程。对象是现实世界中某个实体的抽象,类是一组对象的抽象。
----封装:将相关的概念组成一个单元模块,并通过一个名称来引用它。
----继承:表示类之间的层次关系(父类与子类),这种关系使得某类对象可以继承另外一类对象的特征,继承又可分为单继承和多继承。
----多态:使得在多个类中可以定义同一操作或属性名,并在每个类中可以有不同的实现。
----接口:描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做。
----消息:体现对象间的交互,通过它向目标对象发送操作请求。
----组件:表示软件系统可替换的、物理的组成部分,封装了模块功能的实现。
----复用:指将已有的软件及其有效成分用于构造新的软件或系统。组件技术是软件复用实现的关键。
----模式:描述了一个不断重复发生的问题,以及该问题的解决方案。


以下关于对象、类和继承的叙述中,不正确的是( )。

A.对象是系统中用来描述客观事物的一个模块,是构成系统的基本单位
B.类是现实世界中实体的形式化描述
C.对象是类的实例,类是对象的模板
D.继承表示对象之间的层次关系

答案:D
解析:
继承:表示类之间的层次关系(父类与子类),这种关系使得某类对象可以继承另外一类对象的特征。

更多 “瀚云科技有限公司7月招聘面试题153道2020711” 相关考题
考题 关于对象、类、继承、多态的描述,不正确的是: ( ) 。A.对象包含对象表示、对象状态和对象行为三个基本要素 B.类是对象的实例,对象是类的模板 C.继承是表示类之间的层次关系 D.多态使得同一个操作在不同类中有不同的实现方式答案:B解析:面向对象的基本概念包括对象、类、抽象、封装、继承、多态、接口、消息、组件、复用和模式等。——对象:由数据及其操作所构成的封装体,是系统中用来描述客观事物的一个模块,是构成系统的基本单位。对象包含三个基本要素,分别是对象标识、对象状态和对象行为。——类:现实世界中实体的形式化描述,类将该实体的属性(数据)和操作(函数)封装在一起。类和对象的关系可理解为,对象是类的实例,类是对象的模板。——抽象:通过特定的实例抽取共同特征以后形成概念的过程。对象是现实世界中某个实体的抽象,类是一组对象的抽象。——封装:将相关的概念组成一个单元模块,并通过一个名称来引用它。——继承:表示类之间的层次关系(父类与子类),这种关系使得某类对象可以继承另外一类对象的特征,继承又可分为单继承和多继承。——多态:使得在多个类中可以定义同一操作或属性名,并在每个类中可以有不同的实现。——接口:描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做。——消息:体现对象间的交互,通过它向目标对象发送操作请求。——组件:表示软件系统可替换的、物理的组成部分,封装了模块功能的实现。——复用:指将已有的软件及其有效成分用于构造新的软件或系统。组件技术是软件复用实现的关键。——模式:描述了一个不断重复发生的问题,以及该问题的解决方案。

考题 下面关于类的描述中,错误的是()。A、面向对象的程序设计以对象及数据结构为中心B、面向对象的程序设计用对象表现事件,用来表示对象的抽象C、面向对象的程序设计用方法表现处理事物的过程D、面向对象的程序设计工作的中心是程序代码的编写正确答案:D

考题 运算符*的功能是()。A、用来表示指向对象指针对指向类成员指针的操作B、用来表示对象对指向类成员指针的操作C、用来表示指向对象指针对类成员的操作D、用来表示对象对类成员的操作正确答案:C

考题 框架是一组可用于不同应用的()集合A类B对象C模块D代码A略

考题 一体化电网运行智能系统中关于应用区模块对象的命名与编码,以下说法正确的有()A、对象包括应用区内各功能模块的模型对象B、对象的全路径命名表示为:主控区域名称/子控区名称/模型区域名称/中心名称/功能模块名称/对象名称C、模块对象的编码结构为22位数字码D、模块对象编码由功能模块编码、对象类别编码、对象序列码组成正确答案:A,B,C,D

考题 类的结构是()。A、由代码来表示B、由属性和关系来表示C、由操作来表示D、由对象的交互来表示正确答案:B,C

考题 判断题在Python中定义类时实例方法的第一个参数名称不管是什么,都表示对象自身。A 对B 错正确答案:对解析:暂无解析

考题 this关键字的含义是表示一个()A、指针B、当前对象C、一个类D、一个方法正确答案:B

考题 单选题下面关于类的描述中,错误的是()。A 面向对象的程序设计以对象及数据结构为中心B 面向对象的程序设计用对象表现事件,用来表示对象的抽象C 面向对象的程序设计用方法表现处理事物的过程D 面向对象的程序设计工作的中心是程序代码的编写正确答案:B解析:暂无解析

考题 单选题运算符*的功能是()。A 用来表示指向对象指针对指向类成员指针的操作B 用来表示对象对指向类成员指针的操作C 用来表示指向对象指针对类成员的操作D 用来表示对象对类成员的操作正确答案:A解析:暂无解析