软件工程师(BCSP)
理论知识试卷
学期:S2 | 课程:BCSP 2021Pro | |||
时间: 2小时 | ||||
总分数:100 | ||||
注意:考试结束试卷必须交回,不交回试卷者成绩无效
选择题(针对以下题目,请选择最符合题目要求的答案。针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。1-50题,每题2.0分) |
1) | 在MySQL中,子查询是( )。 (选择一项) | |
a) | 选取单表中字段子集的查询语句 | |
b) | 选取多表中字段子集的查询语句 | |
c) | 返回单表中数据子集的查询语言 | |
d) | 嵌入到另一个查询语句中的查询语句 | |
2) | 在Java中,以下File类的方法中( )用来判断是否是目录。 (选择一项) | |
a) | isFile() | |
b) | getFile() | |
c) | isDirectory() | |
d) | getPath() | |
3) | 在HTML文件中引入jQuery时,需要使用( )属性。 (选择一项) | |
a) | url | |
b) | href | |
c) | src | |
d) | from | |
4) | Java异常处理机制主要为了捕获( )错误,发生错误时,将引发异常,该异常由一个Java代码块捕获。 (选择一项) | |
a) | 编译期 | |
b) | 运行期 | |
c) | 测试期 | |
d) | 调试期 | |
5) | 在Java中,下列有关于线程的叙述中正确的一项是( )。 (选择一项) | |
a) | 一旦一个线程被创建,它就立即开始运行 | |
b) | 使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行 | |
c) | 当一个线程因为抢占机制而停止运行时,它被放在可运行队列的前面 | |
d) | 一个线程执行sleep()方法后处于死亡状态 | |
6) | 在Java中,关于使用分层开发的优势说法正确的是( )。 (选择一项) | |
a) | 使用分层开发,隔离了数据访问代码和业务逻辑代码 | |
b) | 使用分层增加了程序员的工作量 | |
c) | 使用分层提高了代码的耦合性 | |
d) | 使用分层不利于代码的扩展性和系统的可移植性 | |
7) | 在Java中,下列关于Thread类提供的线程调度方法的说法中,错误的一项是( )。 (选择一项) | |
a) | 在线程A中执行线程B的join()方法,则线程A等待直到B执行完成 | |
b) | 线程A通过调用interrupt()方法来中断其阻塞状态 | |
c) | 若线程A调用方法isAlive()返回值为true,则说明A正在执行中 | |
d) | currentThread()方法必须通过线程对象调用 | |
8) | 在Java的某一个类中,下面的方法声明和( )项属于方法的重载。 public void showInfor(){} (选择二项) | |
a) | private void showInfor(int a){} | |
b) | private void showInfor(){} | |
c) | public boolean showInfor(){} | |
d) | public void showInfor(int a, String b){} | |
9) | 在JQuery中,对$.get()方法和$.post()方法描述错误的是( ) (选择一项) | |
a) | URL 参数是必须的 | |
b) | Post方法比get方法更为安全 | |
c) | $.get()方法和$.post()方法都是对$.ajax()的封装 | |
d) | $.ajax()中设置属性method:”post”和$.post()方法是等效的 | |
10) | 在Java Web应用程序中,EL表达式可用于访问( )中存储的数据。 (选择二项) | |
a) | cookie | |
b) | response内置对象 | |
c) | applet | |
d) | 四个作用域 | |
11) | 哪个命令用来显示/home及其子目录下文件名( )。 (选择一项) | |
a) | ls -R /home | |
b) | ls -d /home | |
c) | ls -a /home | |
d) | ls -l /home | |
12) | 阅读代码如下,( )可以正确的获取到encoding的值。 l <servlet> <servlet-name>UserServlet</servlet-name> <servlet-class>org.UserServlet</servlet-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>UserServlet</servlet-name> <url-pattern>/servlet/UserServlet</url-pattern> </servlet-mapping> (选择一项) | |
a) | public class UserServlet implements Filter { public void init(FilterConfig filterConfig) throw ServletException { String enCoding = InitParameter("encoding"); } } | |
b) | public class UserServlet extends HttpServlet { public void init(ServletConfig config) throws ServletException { super.init(config); String InitParameter("encoding"); } } | |
c) | public class UserServlet implements Filter { public void doFilter(ServletRequest request, ServletResponse response, FilterChain finChain) throws IOException, ServletException { String Parameter("encoding"); } } | |
d) | public class UserServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String Parameter("encoding "); } } | |
13) | 在Java中,以下关于线程的说法正确的是( )。 (选择一项) | |
a) | 一个进程可有多个线程,也可一个线程都不包含 | |
b) | 一个进程中的多个线程执行时间是相同的 | |
c) | 多线程程序可以使单CPU的计算机在同一时刻执行多个任务 | |
d) | 单CPU计算机中,一个进程的多个线程是交替执行的 | |
14) | 在JQuery中,以下能够选取ID为title的元素的是() (选择一项) | |
a) | $(“.title”) | |
b) | $(“title”) | |
c) | $(“id.title”) | |
d) | $(“#title”) | |
15) | 根据关系模式的完整性规则,一个关系中的主键( )。 (选择一项) | |
a) | 不能由多列组成 | |
b) | 不能成为另一个关系的外部键 | |
c) | 不允许空值 | |
d) | 可以取空值 | |
16) | DOM定义了访问HTML文档对象的一套( )。 (选择一项) | |
a) | 属性 | |
b) | 方法 | |
c) | 事件 | |
d) | 以上都是 | |
17) | 下面有关JavaScript中 call和apply的错误描述是( )。 (选择一项) | |
a) | call与apply都属于Function.prototype的一个方法,所以每个function实例都有call、apply | |
b) | 两者传递的参数不同,call函数第一个参数是要传入给当前对象的对象,apply不是 | |
c) | apply传递给函数的参数,是一个数组,也就是将多个参数组合成为一个数组传入 | |
d) | call传递给函数的是直接的参数列表。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 | |
18) | 有以下Java代码 public class Demo { public static void main(String[] args) { try { System.out.println("程序正常执行"); throw new Exception(); } catch (Exception e) { System.out.println("出现异常"); }finally{ System.out.println("程序执行完毕"); } } } 程序的运行结果是( )。 (选择一项) | |
a) | 程序正常执行 | |
b) | 程序正常执行 出现异常 程序执行完毕 | |
c) | 程序正常执行 程序执行完毕 | |
d) | 出现异常 程序执行完毕 | |
19) | 以下关于JavaBean说法正确的是( )。 (选择二项) | |
a) | JavaBean常用来封装业务逻辑、数据库操作等,但是不可重用 | |
b) | 一个封装数据的JavaBean一般情况下对应着数据库内的多张表或视图 | |
c) | 一般JavaBean是一个公共类,并提供无参的公有的构造方法,属性私有,具有公有的访问属性的getter和setter方法 | |
d) | JavaBean实际上是一个Java类,从功能上可以分为封装数据和封装业务两类 | |
20) | 在JavaWeb中,文件上传应为form标签添加( )属性。 (选择一项) | |
a) | enctype="multipart/form-data" | |
b) | type="multipart/form-data" | |
c) | type="form-data" | |
d) | enctype="form-data" | |
21) | 在MySQL中,使用in关键字实现子查询时,( )情况下可以用=代替。 (选择一项) | |
a) | 子查询返回唯一的结果时 | |
b) | 子查询返回重复的结果时 | |
c) | 子查询返回多个结果时 | |
d) | 子查询返回的结果中没有重复数据时 | |
22) | 在jQuery中,下列关于DOM操作的说法错误的是( )。 (选择一项) | |
a) | attr( )方法获取或设置元素的属性值 | |
b) | val( )方法获取或设置元素的value属性值 | |
c) | $('h2').attr('value','asdf')执行时,由于h2元素没有value属性,所以该代码会报错 | |
d) | $('#btn').val('asdf')和$('#btn').attr('value','asdf ')可以实现相同的效果('#btn'为按钮) | |
23) | 在JavaEE中,给定某Servlet的代码如下,编译运行该文件,以下陈述正确的是:() public class Servlet1 extends HttpServlet{ public void init() throws ServletException{ } public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{ PrintWriter out = Writer(); System.out.println("hello!"); } } (选择一项) | |
a) | 编译该文件时会提示缺少doGet()或者doPost()方法,编译不能够成功通过 | |
b) | 编译后,把Servlet1.class放在正确位置,运行该Servlet,在控制台中会看到输出文字:hello! | |
c) | 编译后,把Servlet1.class放在正确位置,运行该Servlet,在控制台中看不到任何输出的文字 | |
d) | 编译后,把Servlet1.class放在正确位置,运行该Servlet,在控制台中会看到运行期错误信息 | |
24) | 在JavaScript中,执行以下代码,得到num的值是()。 var num = 10; switch(num){ case 10:num += 1; case 11:num += 2; default: num += 3; } (选择一项) | |
a) | 11 | |
b) | 13 | |
c) | 16 | |
d) | 10 | |
25) | <script> function test(){ for(int i=0;i<10;i++){ document.write(i+”<br>”); } } </script> 当点击按钮,触发执行test()函数后,页面会( )。 (选择一项) | |
a) | 先后弹出十个数,分别为1-10 | |
b) | 页面会打印十个数,分别为1-10 | |
c) | 页面会打印十个数,分别为0-9 | |
d) | 语法错误,无法运行 | |
26) | 在MySQL中,显示数据表orders的表结构语法正确的是( )。 (选择一项) | |
a) | describe orders | |
b) | show orders | |
c) | select * from orders | |
d) | select from orders | |
27) | 下列关于层次选择器说法错误的是() (选择一项) | |
a) | $("ancestor descendant"),获取ancestor元素下边的所有元素。 | |
b) | $("parent > child"),获取parent元素下边的所有子元素(只包含第一层子元素)。 | |
c) | $("pre + next"),获取紧随pre元素的后一个兄弟元素 | |
d) | $("pre ~ siblings"),获取pre元素后边的一个兄弟元素 | |
28) | 使用JDBC技术连接MySQL数据库,以下为在properties配置文件进行数据库配置的代码,其中正确的是( )。 (选择一项) | |
a) | sql.cj.jdbc.Driver; url = jdbc:mysql://localhost:8080/epet; username=epetadmin; password=0000; | |
b) | sql.cj.jdbc.Driver; url = jdbc:mysql://localhost:3306/epet; username=epetadmin; password=0000; | |
c) | driver=com.sql.Driver; url = jdbc:mysql://localhost:3306/epet; username=epetadmin; password=0000; | |
d) | driver=com.sql.Driver; url = jdbc:mysql://localhost:3306/epet; password=0000; | |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论