《JAVA软件工程师面试笔试试卷.doc》由会员分享,可在线阅读,更多相关《JAVA软件工程师面试笔试试卷.doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流JAVA软件工程师面试笔试试卷【精品文档】第 11 页JAVA软件工程师笔试试题(考试时间:120分钟 试卷分值:150分 )一、 逻辑推理题【10分】 1、甲、乙、丙、丁四位同学中有一位同学为海啸灾区捐款1000元,当老师询问时,他们分别这样回答:甲:这1000元不是我捐的 乙:这1000元是丁捐的 丙:这1000元是乙捐的 丁:这1000元不是我捐的 这四人中只有一个人说了真话,由此可见这1000元是谁捐的( A)。【2分】 A甲 B乙 C丙 D丁2、 甲、乙、丙三人是同一家公司的员工,他们的未婚妻A、B、C也都是这家公司的职员。知情者介绍说:“A的
2、未婚夫是乙的好友,并在三个男子中最年轻;丙的年龄比C的未婚夫大。”依据该知情者提供的情况,我们可以推出三对组合分别是(D )。 【3分】A甲A,乙B,丙C B甲B,乙A,丙C C甲C,乙B,丙A D甲A,乙C,丙B3、甲乙丙丁四人的车分别为白色、银色、蓝色和红色。在问到他们各自车的颜色时,甲说:“乙的车不是白色。” 乙说:“丙的车是红色的。”丙说:“丁的车不是蓝色的。” ,丁说:“甲、 乙、丙三人中有一个人的车是红色的,而且只有这个人说的是实话。”如果丁说的是实话,那么以下说法正确的是(B): 【2分】A甲的车是白色的,乙的车是银色的 B乙的车是蓝色的,丙的车是红色的 C丙的车是白色的,丁的车
3、是蓝色的 D丁的车是银色的,甲的车是红色的二、 基础理论题【20分】1.Java是一种先_编译_后_解释_运行的语言。(提示:填编译或者解释)【1分】2.栈是_先进后出_的线性表,队列是_先进先出_的线性表。【2分】3.面向对象的基本特征_封装_,_继承_,_多肽_。【3分】4.事务包含4个基本特征,即ACID,它们分别指_,_,_,_【2分】5.Math.round(11.5)等于_12.0_。 Math.round(-11.5)等于_-11.0_。【2分】6.Java中数据类型包括_简单数据类型_和_引用数据类型_。【1分】7.Java程序控制语句中的循环语法分_for_,_while_和
4、_do_while_三种。【3分】8.构造方法_不能_ ( 能或者不能)被public、private、protected修饰。【1分】9.Java的访问控制有四种: public _、_protected_、_friendly_、_private_。【2分】10.AJAX的核心对象是_。【1分】三、 JAVA基础题【45分】1. 下列选项中不属于java关键字的有 ( AB ) 【1分】ATRUE BsizeofCconst Dsuper Evoid2. 下面哪些是合法的标识符 ( ABE ) 【1分】A$persons BTwoUsersC*point Dthis E _endline3.
5、 下列选项中不是原始数据类型的有? ( c ) 【1分】A.shortB.BooleanC.UnitD.float4. 下列选项中那些语句片段会发生异常 【1分】BDA String s = Gone with the wind;String t = good ; String k = s + t;B String s = Gone with the wind;String t; t = s3 + one;C String s = Gone with the wind;String standard = s.toUpperCase();D String s = home directory;S
6、tring t = s - directory;5. 以下选项中,合法的赋值语句是( bd )【1分】A. a = 1;B. +i;C. a = a + 1 = 5;D. y = (int)I;6. 以下选项中,代码执行完毕后输出结果是( c )【1分】boolean bool = true;if(bool = false) System.out.println(“a”); else if (bool) System.out.println(“b”); else if (!bool) System.out.println(“c”); else System.out.println(“d”);A
7、. aB. bC. cD. dE. Compilation fails7. 以下选项中,正确的是( B )【1分】public class Alpha1 public static void main( String args ) boolean flag; int i=0; do flag = false; System.out.println( i+ ); flag = i 10; continue; while ( (flag)? true:false );A. 000000000B. 0123456789C. Compilation fails.D. The code runs wit
8、h no output.E. The code enters an infinite loop.F. An exception is thrown at runtime.8. 以下代码片段执行后,正确输出的结果是( )【1分】public class Delta static boolean foo(char c) System.out.print(c);return true;public static void main( String argv ) int i =0;for ( foo(A); foo(B)&(i0) System.out.println(first); else if
9、(x-3) System.out.println(second);else System.out.println(third); x的取值在什么范围内时将打印字符串second?DA. x 0B. x -3C. x = -3D. x -310. 有以下代码片段1) class Person 2) public void printValue(int i, int j) /*/ 3) public void printValue(int i)/*.*/ 4) 5) public class Teacher extends Person 6) public void printValue() /*
10、.*/ 7) public void printValue(int i) /*.*/8)public static void main(String args)9) Person t = new Teacher();Teacher t1 = new (Teacher) Person(); 10) t.printValue(10);11) 第十行加粗部分的声明将调用哪些方法? BDA on line 2B on line 3C on line 6D on line 7 11. 在/ point x处的哪些申明是句法上合法的是( )【1分】class Person private int a;pu
11、blic int change(int m) return m; public class Teacher extends Person public int b;public static void main(String arg)Person p = new Person();Teacher t = new Teacher();int i;/ point xAi = m; Bi = b;Ci = p.a; Di = p.change(30); E i = t.b.12. 下列程序在执行完循环后的结果为【1分】Dint i=1,j=10; do if(i+-j) continue; whil
12、e(i5);A. i = 6 j = 5B. i = 5j = 5C. i = 6j = 4D. i = 5j = 613. 判断下列声明是否正确,如果正确请标记(),错误请标记()【1分】1.接口是可以继承接口 ( ) 2.接口可以实现接口 ( )3.接口可以声明为私有的(X ) 4. 是否可以继承String类( X)5.抽象类可以实现接口 ( ) 6.抽象类可以继承实体类( )14. 下列哪种定义接口的方式是正确的【1分】BA. public interface A int a(); B. public interface A implement BC. interface C int
13、a; D. private interface DE. abstract interface E 15. 下列说法正确的有【1分】B A. 类中的构造函数不可省略B. 构造函数必须与class同名,但方法不能与class同名C. 构造函数在一个对象被new时执行D. 一个class只能定义一个构造函数四、 问答题【30分】1. 说说数据连接池的工作机制是什么【3分】2. 一个.java源文件中是否可以包括多个类(不是内部类)?有什么限制。【3分】3. forward 和redirect的区别。【3分】4. MVC的各个部分都有那些技术来实现?如何实现?【3分】5. 页面间对象传递的方法有哪几种
14、? 【3分】6. 说说jsp中动态INCLUDE与静态INCLUDE的区别?【3分】7. jsp有哪些动作?作用分别是什么?【3分】8. 抽象类abstract class和接口interface有什么区别? 【3分】用abstract修饰的类是抽象类,声明方法存在,却不实现Interface 所有的方法都是抽象的 没有程序题9. 异常处理经常用到的throws,throw,try,catch,finally分别代表什么? 【3分】 Throws 捕获异常 ,但是需要在方法调用时,增加try catchThrow 在程序体直接抛出一个异常,后面的程序不能够继续运行Try catch 捕获异常
15、,这个直接在程序体里面写,用的要比throws多Finally 是最终一定会执行。10. 方法的重写Overriding和重载Overloading的区别是什么?【3分】重写 方法名相同,子类重写父类的方法重构 方法名相同,但是参数和参数个数不同,返回值类型相同五、 SQL基础题(任选一题)【25分】题目一假设有四个样表:学生表:students(学号:stuNO,姓名:stuName,性别:stuSex,出生日期:stuBirthday,班级:className)教师表:techers(教师号:techNo,姓名:techName,性别:techSex,出生日期:techBirthday,职
16、称:title,系别:department)课程表:course(课程号:couNo,课程名:couName,教师号:techNo)成绩表:score(学号:stuNO,课程号:couNo,成绩:score)1) 在学生表中检索与学号为2012040326的同学同年同日出生的所有学生的学号、姓名、出生日期. 【5分】2) 查询所有学生的姓名、课程号、成绩【5分】3) 在成绩表中查询平均成绩超过80分的学生学号、平均成绩. 【5分】4) 查出计算机系教师所教课程的成绩表【5分】5) 查询所有任课教师的姓名和所在系【5分】题目二假设有四个样表:雇员表:EMP(编号:EMPNO,姓名:ENAME,工
17、作职位:JOB,领导编号:MGR,雇佣日期:HIREDATE,月薪(工资):SAL,奖金:COMM,部门编号:DEPTNO)部门表:Dept(部门编号:DEPTNO,部门名称:DNAME,部门位置:LOC)工资等级表:Salgrade(等级名称:GRADE,此等级的最低工资:LOSAL,此等级的最低工资:HISAL)奖金表:Bonus(雇员姓名:ENAME,工作职位:JOB,雇员工资:SAL,雇员奖金:COMM)1) 查询在部门30中员工的所有信息【3分】2) 检索每个员工奖金和工资的总和【5分】3) 找出没有奖金或者奖金低于500的员工【5分】4) 列出员工表中每个部门的员工数(员工数必须大
18、于3),和部门名称【6分】5) 检索每个月工资总数最少的那个部门的部门编号,部门名称,部门位置【6分】6) 检索每个部门,,每个职位的平均工资和平均奖金(平均值包括没有奖金),如果平均奖金大于300,显示“奖金不错”,如果平均奖金100到300,显示“奖金一般”,如果平均奖金小于100,显示“基本没有奖金”,按部门编号降序,平均工资降序排列【选做】六、 JAVA编程题【20分】1. 编写一个简单的实现冒泡排序的算法【10分】Public class Button()Public void main(String args)Int ss=10,20,30,40,50,24;For(i=0;iss.length-1;i+)For(j=0;jss.length-1-I;j+)交换For 输出数组2. 写一个或一组实现Singleton单例。【10分】