JAVA_2

来源:互联网 发布:excel数组公式 编辑:程序博客网 时间:2024/05/22 02:15

JAVA工程师笔试题
一,选择题
1.   如下代码
public class Test {
public int aMethod() {
static int i = 0;
i++;
return i;
}
public static void main (String args[]) {
Test test = new Test();
test.aMethod();
int j = test.aMethod();
System.out.println(j);
}
}
输出结果是什么?
A. 0         B. 1             C. 2        D. 编译失败
 
2. 如下代码
int i =1,j =10;
do {
if(i++> --j) {
continue;
}
} while (i <5);
System.out.println("i = " +i+ "and j = "+j);
输出结果是什么?
A. i = 6 and j = 5                 B. i =5 and j = 5            C. i = 6 and j = 5
D. i = 5 and j = 6                 E. i =6 and j = 6
3. 如下代码:
public class SwitchTest {
public static void main(String[] args) {
System.out.println("value = " + switchIt(4));
}
public static int switchIt(int x) {
int j = 1;
switch (x) {
case 1: j++;
case 2: j++;
case 3: j++;
case 4: j++;
case 5: j++;
default: j++;
}
return j + x;
}
}
输出结果是什么?
A. value = 3          B. value = 4                C. value = 5
D. value = 6          E. value = 7                F. value = 8
4. 在接口中以下哪条定义是正确的? (两个答案)
A. void methoda();
B. public double methoda();
C. public final double methoda();
D. static void methoda(double d1);
E. protected void methoda(double d1);
5. 如下代码:
public void test(int x) {
int odd = x%2;
if (odd) {
System.out.println("odd);
} else {
System.out.println("even");
}
}
哪个描述正确?
A. 编译失败.                             B."odd" 永远被输出.               C. "even" 永远被输出
D."odd" 输出x的值,         E. "even"输出x的值
6. 如下代码:
public class X {
public X aMethod() { return this;}
}
public class Y extends X {
}
哪两个方法能加到Y类的定义中?
A. public void aMethod() {}                      B.private void aMethod() {}
C. public void aMethod(String s) {} D.private Y aMethod() { return null; }
E. public X aMethod() { return new Y(); }
7. 如下代码:
public class X {
public static void main(String [] args) {
try {
badMethod();
System.out.print("A");
}
catch (Exception ex) {
System.out.print("C");
}
finally {
System.out.print("B");
}
System.out.print("D");
}
public static void badMethod() {
throw new Error();
}
}
结果是什么?
A. ABCD               B. 编译失败.              C. 显示C,退出程序.
D. 显示B,C,退出程序.                        E. 显示BCD,退出程序.
8. 如下代码:
public class Foo {
public static void main(String[] args) {
try {
return;
} finally {
System.out.println( "Finally" );
} }}
输出结果是什么?
A. Finally
B.编译失败
C. 代码正常运行但没有任何输出.
D. 运行时抛出异常
9. 如下代码:
class Base {
Base() { System.out.print("Base"); }
}
public class Alpha extends Base {
public static void main( String[] args ) {
new Alpha();
new Base();
}
}
结果是什么?
A. Base B. BaseBase C. 编译失败. D. 代码运行但没有输出. E. 运行时抛出异常.
二问答题
1、简述synchronized和java.util.concurrent.locks.Lock的异同
 
 
 
 
2、MVC的各个部分都有那些技术来实现?如何实现?
 
 
 
 
 
3、什么是java序列化,如何实现java序列化?
 
 
 
4、什么是单例模式?写一个单例类。
 
 
 
 
5、问:WEB SERVICE、SOAP、UDDI,WSDL名词解释
 
 
6、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
 
 
7、说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法(可在面试时候详述)
 
8  java加密技术有那些(可在面试时候详述)
 
9  java是如何对数据进行压缩和解压的(可在面试时候详述)。
 
 
三  SQL基础题
1     创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话
         
         
          2    修改学生表的结构,添加一列信息,学历
 
          3     修改学生表的结构,删除一列信息,家庭住址
 
          4     向学生表添加如下信息:
 

学号

姓名

年龄

性别

联系电话

学历

1

A

22

123456

小学

2

B

21

119

中学

3

C

23

110

高中

 
 
 
          5     修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”
 
          6     删除学生表的数据,姓名以C开头,性别为‘男’的记录删除
 
 
四 SQL高级题
说明:有三个表,项目表、合同表、付款表
下面是建立表的语句
项目表(项目编号 int,项目名称 varchar(50))

项目编号

,项目名称

1

项目1

2

项目2

3

项目3

 
合同表(合同编号 int,项目编号 int,合同金额 number(7,3))

合同编号

项目编号

合同金额

1

1

1000

2

1

1500

3

2

2000

 
付款表(付款编号 int,合同编号 int,付款金额 number(7,3))

付款编号

合同编号

付款金额

1

1

1000

2

2

2000

3

2

800

一个项目可能会有签署多个合同,每个合同会分几次付款,
问题(一)设计一个查询,要求返回结果如下:
项目编号        项目名称            项目所有合同的金额                               
----------- ----------------------- ------------------------
1           项目1                   2500
2           项目2                   2000
3           项目3                   NULL
解答:
 
问题(二)设计一个查询,要求返回结果如下:
项目编号        项目所有合同已付款金额                             
---------------------------
1           1100
2            NULL
解答:
 
 
 
问题(三)设计一个查询,要求返回结果如下
项目编号    项目名称       项目所有合同已付款金额                             
----------- ----------------------------------------
1           项目1   1100
2           项目2   NULL
----------------------------------------------------
解答:
 
 
 
问题(四)请您设计一个查询语句,检索的格式如下
------------------------------------------------------------------------
项目编号    项目名称    项目所有合同的金额    项目所有合同已付款金额    
1           项目1       2500.000             1100.000
2          项目2       2000.000             NULL
------------------------------------------------------------------------
解答:

原创粉丝点击