软件工程师(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){}
jquery是什么软件
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小时内删除。