北京中长石基信息技术股份有限公司11月招聘面试题105道20201115

对异常处理语句try-catch-finally,下面哪个说法正确()

A、如果有多个catch语句,对所有的catch语句都会执行一次

B、如果有多个catch语句,对每个符合条件的catch语句都会执行一次

C、多个catch的情况下,异常类的排列顺序应该是父类在前,子类在后

D.一般情况下,finally部分都会被执行一次


答案:D 

解析:

try语句 执行你所定义的或者你所捕获到的错误测试的代码块

catch :定义当try 代码块发生错误所需要执行的代码块

finally:无论是否有异常都会执行



在try...except...else结构中,如果try块的语句引发了异常则会执行else块中的代码。

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


正确答案:×


下列关于try和catch语句的描述中,错误的是______。

A.不同的catch代码段是不同的作用域,但是可以访问相互之间定义的局部变量

B.如果没有异常产生,则所有的catch代码段都被略过不执行

C.异常总是由距离产生异常最近的匹配catch代码段处理

D.try代码段后跟一个或多个catch代码段


正确答案:A


Foxbase中,关于条件分支语句说法正确的是()。

  • A、最多只能有2重嵌套
  • B、如果条件为真,则执行ELSE与ENDIF之间的语句
  • C、如果条件为假,则执行IF与ELSE之间的语句
  • D、如果条件为假,则执行ELSE与ENDIF之间的语句

正确答案:D


关于finally块中的代码描述正确的是()

  • A、finally块中的代码总是被执行的
  • B、如果try块后没有catch块,finally块中的代码才会执行
  • C、异常发生时才被执行
  • D、异常没有发生时才被执行

正确答案:A


北京中长石基信息技术股份有限公司11月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:装饰器的作用和功能?可用的回答 : 1. 引入日志 2. 函数执行时间统计 3. 执行函数前预备处理 4. 执行函数后的清理功能 5. 权限校验等场景 6. 缓存 问题 Q2:介绍一下except的用法和作用?可用的回答 : tryexceptexceptelsefinally 执行try下的语句,如果引发异常,则执行过程会跳到except语句。 对每个except分支顺序尝试执行,如果引发的异常与except中的异常组匹配,执行相应的语句。 如果所有的except都不匹配,则异常会传递到下一个调用本代码的最高层try代码中。 try下的语句正常执行,则执行else块代码。如果发生异常,就不会执行 如果存在finally语句,最后总是会执行。 问题 Q3:如果让你来防范网站爬虫,你应该怎么来提高爬取的难度?可用的回答 : 1. 判断headers的User-Agent; 2. 检测同一个IP的访问频率; 3. 数据通过Ajax获取; 4. 爬取行为是对页面的源文件爬取,如果要爬取静态网页的html代码,可以使用jquery去模仿写html。 问题 Q4:常见的HTTP方法有哪些?可用的回答 : GET:请求指定的页面信息,返回实体主体; HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于捕获报头; POST:向指定资源提交数据进行处理请求(比如表单提交或者上传文件),。数据被包含在请求体中。 PUT:从客户端向服务端传送数据取代指定的文档的内容; DELETE:请求删除指定的页面; CONNNECT:HTTP1.1协议中预留给能够将连接方式改为管道方式的代理服务器; OPTIONS:允许客户端查看服务器的性能; TRACE:回显服务器的请求,主要用于测试或者诊断。 问题 Q5:如何在Python中内存管理?可用的回答 :Python内存由Python私有堆空间管理。 所有Python对象和数据结构都位于私有堆中。 程序员无权访问此私有堆,解释器负责处理此私有堆。 Python对象的Python堆空间分配由Python内存管理器完成。核心API提供了一些程序员编写代码的工具。 Python还有一个内置的垃圾收集器,它可以回收所有未使用的内存并释放内存并使其可用于堆空间。问题 Q6:你常用的mysql引擎有哪些?各引擎间有什么区别?可用的回答 : 主要 MyISAM 与 InnoDB 两个引擎,其主要区别如下: 一、 InnoDB 支持事务,MyISAM 不支持,这一点是非常之重要。 事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而 MyISAM就不可以了; 二、 MyISAM 适合查询以及插入为主的应用,InnoDB 适合频繁修改以及涉及到安全性较高的应用; 三、 InnoDB 支持外键,MyISAM 不支持; 四、 MyISAM 是默认引擎,InnoDB 需要指定; 五、 InnoDB 不支持 FULLTEXT 类型的索引; 六、 InnoDB 中不保存表的行数,如 select count(*) from table 时,InnoDB; 需要扫描一遍整个表来计算有多少行,但是 MyISAM 只要简单的读出保存好的行数即可。 注意的是,当 count(*)语句包含 where 条件时 MyISAM 也需要扫描整个表; 七、 对于自增长的字段,InnoDB 中必须包含只有该字段的索引,但是在 MyISAM 表中可以和其他字段一起建立联合索引; 八、 清空整个表时,InnoDB 是一行一行的删除,效率非常慢。MyISAM 则会重建表; 九、 InnoDB 支持行锁(某些情况下还是锁整表,如 update table set a=1 where user like %lee% 问题 Q7:Python里面match()和search()的区别?可用的回答 :re模块中match(pattern,string,flags),检查string的开头是否与pattern匹配。re模块中research(pattern,string,flags),在string搜索pattern的第一个匹配值。问题 Q8:用Python匹配HTML tag的时候,和有什么区别?可用的回答 :术语叫贪婪匹配( )和非贪婪匹配( )问题 Q9:json序列化时,默认遇到中文会转换成unicode,如果想要保留中文怎么办?可用的回答 :json.dumps函数方法中加上参数 ensure_ascii = False问题 Q10:参数如何通过值或引用传递?可用的回答 :Python中的所有内容都是一个对象,所有变量都包含对象的引用算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:单词中断处题目描述如下:Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine if s can be segmented into a space-separated sequence of one or more dictionary words.Note:The same word in the dictionary may be reused multiple times in the segmentation.You may assume the dictionary does not contain duplicate words.Example 1:Input: s = leetcode, wordDict = leet, codeOutput: trueExplanation: Return true because leetcode can be segmented as leet code.Example 2:Input: s = applepenapple, wordDict = apple, penOutput: trueExplanation: Return true because applepenapple can be segmented as apple pen apple.

在Java的异常处理语句try-catch-final中,以下描述不正确的是()。

  • A、try后面是可能产生异常的代码,catch后面是捕获到某种异常对象时进行处理的代码,final后面是没有捕获到异常时要执行的代码
  • B、try后面是可能产生异常的代码,catch后面是捕获到某种异常对象时进行处理的代码,final后面是无论是否捕获到异常都必须执行的代码
  • C、catch语句和final语句都可以缺省
  • D、catch语句用来处理程序运行时的非致命性错误,而final语句用来处理程序运行时的致命性错误
  • E、当程序运行时抛出的异常是cathe语句中异常的子类,异常也会被捕捉执行相应的catch语句

正确答案:A,C,D


下面的异常处理说明正确的是()

  • A、try块只能使用一个catch子句
  • B、try块必须同时与catch子句和finally子句一起使用
  • C、try块不能单独使用
  • D、try块中如果执行了return语句,则其finally子句不能执行

正确答案:C


在finally代码块中的代码,()。

  • A、在任何错误处理代码之前执行
  • B、不执行,除非在前面的try块中产生异常
  • C、不能保证在任何确定的时间内执行,但是将会优先于“碎片收集”被JVM调用
  • D、保证执行,无论try块中是否产生异常

正确答案:D


什么时候会执行try-except-else的else部分()

  • A、总是
  • B、当发生异常时
  • C、没有异常发生
  • D、当包含块之外执行发生异常时

正确答案:C


无论try块中的语句是否发生异常,都会执行catch块中的语句。()


正确答案:错误

更多 “北京中长石基信息技术股份有限公司11月招聘面试题105道20201115” 相关考题
考题 单选题Foxbase中,关于条件分支语句说法正确的是()。A 最多只能有2重嵌套B 如果条件为真,则执行ELSE与ENDIF之间的语句C 如果条件为假,则执行IF与ELSE之间的语句D 如果条件为假,则执行ELSE与ENDIF之间的语句正确答案:B解析:暂无解析

考题 对于异常处理语句try…catch,下面那句话不正确?()A、一个符合条件的catch的处理语句中没有break语句,则执行后会继续执行后续catchB、不管有没有捕获异常,finally部分都会被执行C、找到合适的异常类型后就不再执行后面的catchD、应该先处理子异常类,再处理父异常类。正确答案:A

考题 单选题finally块中的代码将()A 总是被执行B 如果try块后面没有catch块时,finally块中的代码才会执行C 异常发生时才被执行D 异常没有发生时才执行正确答案:A解析:暂无解析

考题 由于异常处理结构try...except...finally...中finally里的语句块总是被执行的,所以把关闭文件的代码放到finally块里肯定是万无一失,一定能保证文件被正确关闭并且不会引发任何异常。正确答案:错误

考题 问答题假设下列try-catch语句块中的第2个语句s2产生一个异常,试回答下述问题: ⑴语句s3会执行吗?  ⑵如果catch捕获到异常,语句s4会执行吗? ⑶如果异常未被捕获,语句s4会执行吗?正确答案:若try-catch语句块中的第2个语句s2产生一个异常,⑴语句s3不会执行,⑵如果catch捕获到异常,异常处理后,会继续执行语句s4,⑶如果异常未被捕获,则程序终止运行,语句s4也不会执行。解析:暂无解析

考题 (难度:中等)finally 关键字用来创建在 try 代码块后面执行的代码块,无论是否发生异常,finally 代码块中的代码总会被执行答案:(yes)

考题 在try...except...else结构中,如果try块的语句引发了异常则会执行else块中的代码。正确答案:错误

考题 如果在try程序块中没有发生异常,那么当该程序块执行完后,程序继续执行什么地方的语句?正确答案:如果一个try程序块中没有发生任何异常,那么就跳过该块的异常处理程序,继续执行最后一个catch块之后的代码。如果有finally程序块的话,就执行finally程序块及其后的语句。

考题 在下面的代码中,continue语句的作用时() for(int i=0;iif(objArray[i]!=5)        continue;  objArray[i]:=100;}  A、跳过if程序块中congtinue下面的语句,执行if块外面的语句B、跳过整个函数中下面所有的语句,跳出整个函数C、跳过for循环中continue下面的语句,直接开始新的循环D、如果if程序块中有else块,则跳过else块,执行下面的语句正确答案:C

考题 多选题js的条件语句说法正确的是()。Aif语句-只有当指定条件为true时,使用该语句来执行代码Bif...else语句-当条件为true时执行代码,当条件为false时执行其他代码Cif...elseif....else语句-使用该语句来选择多个代码块之一来执行Dswitch语句-使用该语句来选择多个代码块之一来执行正确答案:A,B,C,D解析:暂无解析