(下述的所有题目都是使用JAVA语言)
一、 单项选择题 (15分)
1、下面语句段的输出结果是什么?(3分) int i = 9; switch (i) { default:
System.out.println(\"default\"); case 0:
System.out.println(\"zero\"); break; case 1:
System.out.println(\"one\"); case 2:
System.out.println(\"two\"); } A: default
B: default, zero
C: error default clause not defined D: no output displayed 答案:
2、下面的哪个选项是正确的? (3分) class ExSuper{ String name;
String nick_name;
public ExSuper(String s,String t){ name = s;
nick_name = t; }
public String toString(){ return name; } }
public class Example extends ExSuper{ public Example(String s,String t){ super(s,t); }
public String toString(){
return name +\"a.k.a\"+nick_name; }
public static void main(String args[]){
ExSuper a = new ExSuper(\"First\ ExSuper b = new Example(\"Second\
System.out.println(\"a is\"+a.toString()); System.out.println(\"b is\"+b.toString()); } }
A: 编译时会出现例外。 B: 运行结果为:
a is First b is second C: 运行结果为:
a isFirst
b isSeconda.k.a 2nd D: 运行结果为:
a is First a.k.a 1nd b is Second a.k.a 2nd 答案:
3、下面程序段的执行结果是什么?(3分) public class Foo{
public static void main(String[] args){ try{
return;}
finally{System.out.println(\"Finally\"); } } }
A: 程序正常运行,但不输出任何结果。 B: 程序正常运行,并输出 \"Finally\"。
C: 编译能通过,但运行时会出现一个例外。 D: 因为没有catch语句块,所以不能通过编译。 答案:
4、对于EJB,下列哪个说法是正确的:(2分) A: JavaBean是组件,EJB不是组件 B: EJB可以自己运行而不需要运行环境
C: EJB在符合EJB容器规范的容器中都可以运行 D: 在EJB1.0规范中规定了3种类型的EJB 答案:
5、关于JSP的论述,正确的是: (2分) A: JSP是JavaScript的简称
B: JSP可以直接编译成class文件
C: JSP是被解释成HttpServlet后再编译的 D: JSP是被解释成HttpJspPage后再编译的 答案:
6、关于Servlet的论述,正确的是:(2分)
A Servlet就是一般的Java程序,没有什么特点 B Servlet可以通过java servlet-name直接运行 C 有些Servlet是需要在客户端运行的
D 我们常说的Servlet是继承HttpServlet类的服务器端Java程序 答案:
二、多项选择题(10分)
1、下面哪些选项将是下述程序的输出?(2分) public class Outer{
public static void main(String args[]){ Outer: for(int i=0; i<3; i++) inner:for(int j=0;j<3;j++){ if(j>1) break;
System.out.println(j+\"and\"+i); } } }
A: 0 and 0 B: 0 and 1 C: 0 and 2 D: 0 and 3 E: 2 and 2 F: 2 and 1 G: 2 and 0 答案:
2、接口A的定义如下,指出下列哪些类实现了该接口? interface A {
int method1(int i); int method2(int j); }
A: class B implements A { int method1() { } int method2() { } }
B: class B {
int method1(int i) { } int method2(int j) { } }
C: class B implements A { int method1(int i) { }
(2分) int method2(int j) { } }
D: class B extends A {
int method1(int i) { } int method2(int j) { } }
E: class B implements A { int method2(int j) { } int method1(int i) { } } 答案:
3、关于Runnable接口,正确的说法有:(2分)
A: 实现了Runnable接口就可以用start方法启动
B: Runable接口提供了通过线程执行程序的最基本的接口 C: Thread类实现了Runnable接口 D: Runnable只定义了一个run方法 答案:
4、关于数据报通信(UDP)和流式通信(TCP)的论述,正确的有:
A: TCP和UDP在很大程度上是一样的,由于历史的原因产生了两个不同的名字而已 B: TCP和UDP在传输方式上是一样的,都是基于流的,但是TCP可靠,UDP不可靠
C: TCP和UDP使用的都是IP层所提供的服务 D: 用户可以使用UDP来实现TCP的功能 答案:
5、关于session的论述正确的有:(2分) A: 一个session可以对应数个用户 B: 一个session只能对应一个用户 C: 可以手动关闭一个session
D: session如果不手动关闭,会一直存在Server中 答案:
三、 编程题 (20分)
1、编写一个程序,对数组a[]={20,10,50,40,30,70,60,80,90,100}进行从大到小的排序。(5分)
2.数据库中现有两个表,表1: T_STUDENT,字段有:学生编号SID,主键,
学生姓名SNAME,分数SCORE;表2:T_SCORE,字段有:学生编号SID 外键,分数SCORE,请写一个SQL语句把表2中的学生分数SCORE填到表1中相应的学生分数中。
UPDATE T_STUDENT,T_SCORE SET T_STUDENT.SCORE=T_SCORE.SCORE WHERE T_STUDENT.SID=T_SCORE.SID
3 在数据库中有三张表,如下图:
要求写出SQL语句从上面的表单中选出所有的学生列表,所选字段有:学生姓名(SNAME),学生所属的系名(DNAME),学生所对应的教授姓名(PNAME),教授所属的系名(DNAME), 以学生姓名降序排列。(15分)
SELECT SNAME,DNAME,PNAME FROM
T_STUDENT,T_PROFESSOR,T_DEPARTMENT
WHERE T_STUDENT.DID=T_DEPARTMENT.DID AND T_PROFESSOR.DID=T_DEPARTMENT.DID AND
T_STUDENT.PID=T_PROFESSOR.PID ORDER BY SNAME DESC;
四、问答题 (55分)
1.谈谈final, finally, finalize的区别。(3分)
2.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?(2分)
3.&和&&的区别。(2分)
4.HashMap和Hashtable的区别。(2分)
5.Collection 和 Collections的区别。(2分)
6.String s = new String(\"xyz\");创建了几个String Object?(2分)
7.short s1 = 1;s1 = s1 + 1;有什么错?short s1 = 1; s1 += 1;有什么错?(2分)
8.Java有没有goto?(2分)
9.数组有没有length()这个方法? String有没有length()这个方法?(2分)
10. Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?(3分)
11. Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?(2分)
12. 给我一个你最常见到的runtime exception (2分)
13. error和exception有什么区别?(2分)
14. List, Set, Map是否继承自Collection接口?(2分)
15. abstract class和interface有什么区别?(2分)
16. abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?(2分)
17. 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?(3分)
18. 启动一个线程是用run()还是start()? (2分)
19. 构造器Constructor是否可被override?(2分)
20. 是否可以继承String类?(2分)
21. 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?(2分)
22. try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?(2分)
23. 用最有效率的方法算出2乘以8等於几?(2分)
24. 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?(2分)
25. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?(2分)
26. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?(2分)
因篇幅问题不能全部显示,请点此查看更多更全内容