达内科技JAVA项目经理入职考试I不含答案新.docx
《达内科技JAVA项目经理入职考试I不含答案新.docx》由会员分享,可在线阅读,更多相关《达内科技JAVA项目经理入职考试I不含答案新.docx(13页珍藏版)》请在冰豆网上搜索。
达内科技JAVA项目经理入职考试I不含答案新
达内科技项目经理入职考试
(JAVA方向A卷)
考试说明:
本考试为达内科技JAVA产品线项目经理入职考试,考试使用闭卷、笔试的形式。
满分100分,考试时间120分钟。
考试期间不允许使用电脑,不可打开任何开发和调试工具以及文档,否则,一经发现按照零分处理。
一,基本知识,不定项选择(总分20分,每题2分)
1.在Java中,关于static关键字的说法错误的是:
(d)
a)static可以修饰方法
b)static可以修饰成员
c)static可以修饰代码块
d)static可以修饰局部变量和形参
2.在Java中,关于final关键字的说法正确的是:
(c)
a)如果修饰局部变量,必须初始化
b)如果修饰类,则该类只能被一个子类继承
c)如果修饰方法,则该方法不能在子类中被覆盖
d)如果修饰方法,则该方法所在的类不能被继承
3.关于抽象类的说法正确的是:
(abc)
a)抽象类中一定包含抽象方法,否则是出现编译错误
b)包含抽象方法的类一定是抽象类
c)抽象方法可以没有方法体,也可以有方法体
d)抽象类的子类一定不是抽象类
4.下列关于JVM的说法错误的是:
(d)
a)JVM的栈空间用来存储方法调用时的临时变量,当调用新方法时,新方法的存储空间入栈,当方法调用结束时,方法的空间出栈。
b)JVM的堆空间是用来存储对象的空间,该空间由JVM自动管理。
c)我们可以通过设置参数来调整JVM的栈空间和堆空间的大小。
d)一个程序运行时,只有一个栈。
5.下列关于继承的说法正确的是:
()
a)子类构造函数一定会调用父类构造函数。
b)构造函数的第一行一定是super()或this();而且,这样的调用也只能出现在构造函数的第一行。
c)任何时候,将父类对象强制转换为其子类的对象,在编译时都能通过。
d)如果(ainstanceofA)的值为true,则a可以转换为A类型。
6.要从员工表中查询所有姓Smith的人,但是并不能确定所有Smith的大小写,以下哪条语句能解决问题?
()
a)SELECTlast_name,first_nameFROMempWHERElast_name=’smith’
b)SELECTlast_name,first_nameFROMempWHEREUPPER(last_name)=’smith’
c)SELECTlast_name,first_nameFROMempWHERElast_name=UPPER(‘smith’)
d)SELECTlast_name,first_nameFROMempWHERELOWER(last_name)=’smith’
7.以下哪些接口能够实现对Web访问者的身份认证?
()
A、HttpServletRequest
B、HttpServletResponse
C、HttpSession
D、HttpServlet
8.假设web应用的文档根目录为MyApp,那么可以从哪里找到database.jar文件。
()
A.MyApp目录下
B.MyApp\images目录下
C.MyApp\WEB-INF目录下
D.MyApp\WEB-INF\lib目录下
9.关于JSP生命周期的叙述,下列哪些为真?
()
A.JSP会先解释成Servlet源文件,然后编译成Servlet类文件
B.每当用户端运行JSP时,jspInit()方法都会运行一次
C.每当用户端运行JSP时,_jspService()方法都会运行一次
D.每当用户端运行JSP时,jspDestroy()方法都会运行一次
10.spring的核心技术是()
A、A、依赖注入(DI)B、面向切面编程(AOP)
B、C、分层框架D、丰富的标签库
二,程序排错:
(总分30分,每题3分)
11.以下程序将ArrayList中的数据取出,转换后存入整形数组,程序最有可能报告何种异常。
()
publicclassTest1{
publicstaticvoidmain(String[]args){
Listlist=newArrayList();
list.add(3.14);
list.add(4.13);
list.add(1.43);
int[]arr=newint[4];
for(intI=0;iarr[i]=(Integer)list.get(i);
}
}
}
A.ArrayIndexOutOfBoundsException
B.ArithmeticException
C.NullPointerException
D.ClassCastException
12.以下程序在控制台输出“SayHello!
”:
在Eclipse中运行该程序产生如下的错误信息:
以下哪一项是正确的修改方法:
()
A.将main方法的修饰符声明为publicstatic
B.将main方法的形参定义为:
String[]args
C.(A),(B)两项都需要修改
D.将main方法的形参定义为:
java.lang.String[]args
13.请看下列代码:
publicclassBlip{
protectedintblipvert(intx){
return0;
}
}
ClassVertextendsBlip{
<插入代码>
}
在<插入代码>处填入选项中的代码,使Vert累没有编译错误的是:
()
A.publicintblipvert(intx){return0;}
B.privateintblipvert(intx){return0;}
C.privateintblipvert(longx){return0;}
D.protectedlongblipvert(intx){return0;}
14.当你执行以下查询语句:
SELECT empno,ename FROM emp
WHERE empno =7782 OR empno =7876;
在WHERE语句中,以下哪个操作符可以取代OR?
A. IN
B. BETWEEN „„
C. LIKE
D. <=
15.以下()可用于检索session属性userid的值。
A.session.getAttribute(“userid”);
B.session.setAttribute(“userid”);
C.request.getParameter(“userid”);
D.request.getAttribute(“userid”);
16.考虑下面两个JSP文件代码片断:
test1.jsp:
<%pageContext.setAttribute(“ten”,newInteger(10));%>
//1
test2.jsp:
数字为:
<%=pageContext.getAttribute(“ten”)%>
以下()放置在test1.jsp中的//1处,当请求test1.jsp时正确输出test2.jsp中的内容。
()
A.includepage=”test2.jsp”/>
B.forwordpage=”test2.jsp”/>
C.<%@includefile=”test2.jsp”%>
D.由于pageContext对象的scope属性为page,所以test2.jsp不能访问test1.jsp定义的属性
17.以下是login.jsp文件的代码片断:
<%@pageisELIgnored="false"%>
用户名为:
${param.name}
以下()描述正确。
A.发生运行错误
B.页面会出现一文本框,并且文本框中内容为${param['name']}
C.当用户输入名字并单击“提交”按钮时,在同一页面中的“用户名为:
”字样后面会显示用户输入
的内容
D.当用户输入名字并单击“提交”按钮时,在同一页面中的“用户名为:
”字样后面会显示${param.name}
18.请看下列代码:
publicclassImageAction{
privateInputStreamimageStream;
//省略setter和getter
}
在Struts2中以字节流的方式响应给调用者,下列struts.xml文件中配置正确的是:
()
A.class="ctoss.action.ImageAction">
imageStream
B.class="ctoss.action.ImageAction">
imageStream
C.class="ctoss.action.ImageAction">
InputStream
D.class="ctoss.action.ImageAction">
InputStream
19.以下程序用来完成对数组的插入排序,请在空白处填写正确的代码?
、
packagecom.tarena.pm_exam.javase.case01;
publicclassTest09{
publicstaticvoidmain(String[]args){
int[]arr=newint[100];
for(inti=0;iarr[i]=(int)(Math.random()*10000);
}
for(inti=1;ifor(intj=0;【2】;j++){
if(arr[j]>arr[i]){
inttemp=arr[i];
for(intk=i-1;【3】;k--){
【4】
}
arr[j]=temp;
}
}
}
}
}
请在【2】号位置填入正确的代码:
__________________________
请在【3】号位置填入正确的代码:
__________________________
请在【4】号位置填入正确的代码:
__________________________
20.以下程序实现文件的拷贝,为提高读写效率,程序中定义了一个4K的缓存,请将程序中空白位置补充完整。
packagecom.tarena.pm_exam.javase.case01;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.IOException;
publicclassFileCopy{
privateFileInputStreamfis;
privateFileOutputStreamfos;
privatestaticfinalintBUFF_SIZE=4*1024;
privatebyte[]buff=newbyte[BUFF_SIZE];
publicvoidcopy(Filesrc,Filetar)throwsIOException{
fis=newFileInputStream(src);
fos=newFileOutputStream(tar);
while(【5】){
【6】
}
fos.write(buff);
fos.close();
fis.close();
}
publicstaticvoidmain(String[]args){
try{
newFileCopy().copy(newFile("d:
\\mm.jpg"),newFile("d:
\\mm2.jpg"));
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
请在【5】号位置填入正确的代码:
____________________________
请在【6】号位置填入正确的代码:
____________________________
三,代码调试:
(总分30分,每题6分)
21.以下代码向一个List中插入数据,运行将报告异常,请简述异常产生的原因,及解决办法。
错误原因:
修改代码:
将第行至_____行代码修改为:
22.以下代码期望输出2~100以内哪些是素数,哪些不是素数,但程序并未按照预想输出,请将代码修改正确。
为使以上程序运行正确,需要将从行到行的代码修改为:
23.以下程序13行存在编译错误,请指出如何修改
为使以上程序运行正确,需要将从2行到3行的代码修改为:
24.请补充一下以下代码
请将补充的代码填入下框:
25.已知以下条件,请按照要求填写SQL语句
createtableLEANR(idintprimarykeyauto_increment,
student_idintnotnull,
kcvarchar(20)notnull,
gradeintnotnull);
insertintoLEANR(student_id,kc,grade)values(2007001,'CHINESE',80);
insertintoLEANR(student_id,kc,grade)values(2007001,'ENGLISH',85);
insertintoLEANR(student_id,kc,grade)values(2007001,'MATH',90);
insertintoLEANR(student_id,kc,grade)values(2007002,'CHINESE',60);
insertintoLEANR(student_id,kc,grade)values(2007002,'ENGLISH',90);
insertintoLEANR(student_id,kc,grade)values(2007002,'MATH',70);
insertintoLEANR(student_id,kc,grade)values(2007003,'CHINESE',90);
insertintoLEANR(student_id,kc,grade)values(2007003,'ENGLISH',90);
insertintoLEANR(student_id,kc,grade)values(2007003,'MATH',90);
insertintoLEANR(student_id,kc,grade)values(2007004,'CHINESE',60);
insertintoLEANR(student_id,kc,grade)values(2007004,'ENGLISH',70);
insertintoLEANR(student_id,kc,grade)values(2007004,'MATH',60);
原表:
1.查询以grade降序排列的第31到40条记录(不需要区分课程)
2.查询表中存在课程重复4次以上的记录,显示课程和重复的次数,并且按照重复次数的降序排列:
四,编程能力:
(总分20分)
26.编写程序,完成贪吃蛇游戏,请完成程序中关于判断食物Cell(x,y)是否包含在蛇身上的方法。
以下贪吃蛇部分代码,请完善:
/**一个单元格子*/
publicclassCell{
privateintx;
privateinty;
publicCell(){
}
publicCell(intx,inty){
this.x=x;
this.y=y;
}
publicintgetX(){
returnx;
}
publicvoidsetX(intx){
this.x=x;
}
publicintgetY(){
returny;
}
publicvoidsetY(inty){
this.y=y;
}
publicStringtoString(){
return"["+x+","+y+"]";
}
}
publicclassWorm{
//蛇所在格子集合
privateCell[]cells;
//判断食物Cell(x,y)是否包含在蛇身上
publicbooleancontains(intx,inty){
//请补充代码
【1】
}
//-------其它代码省略---------
}
请填写:
【1】