Java 开发工程师笔试题
一、单项选择题(每题2分,共计30分)
1. 下列哪一种叙述是正确的
(A).abstract 修饰符可修饰字段、方法和类
(B).抽象方法的body 部分必须用一对大括号{}包住
(C).声明抽象方法,大括号可有可无
(D).声明抽象方法不可写出大括号
如下代码
public class Test {
public int aMethod(){
static int i =0;
i++;
return i;
}
public static void main (Stringargs[]){
Test test =new Test();
test.aMethod();
int j =test.aMethod();
System.out.println(j);
}
}
输出结果是什么?
(A).0
(B).1
(C).2
(D).编译失败
3. 以下代码的输出结果是()?
public class Test1{
public static void main(String[]args){
int i =42;
String s =(i50) ? "universe" :"everything";
System.out.println(s);
}
}
(A).life
(B).universe
(C).everything
(D).以上答案都不对。2.
4. 当你编译和运行下面的代码时,会出现下面选项中的哪种情况?
public class Test{
static boolean paddy;
public static void main(String[]args){
System.out.println(paddy);
}
}
(A).
(B).
(C).
(D).编译时出错编译通过并输出结果false 编译通过并输出结果true 编译通过并输出结果null
5. 如下代码:
class Base {
public 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).运行时抛出异常
6. 如下代码:
public class Foo {
public static void main(String[]args) {
try {
return;
}finally {
System.out.println("Finally" );
}
}
}
输出结果是什么?
(A).Finally
(B).编译失败
(C).代码正常运行但没有任何输出.
(D).运行时抛出异常
7. 下列关于构造方法的叙述中,错误的是()
(A).Java 语言规定构造方法名与类名必须相同
(B).Java 语言规定构造方法没有返回值,但不用vold 声明
(C).Java 语言规定构造方法不可以重载
(D).Java 语言规定构造方法只能通过new 自动调用
构造函数何时被调用()
(A).类定义时
(B).创建对象时
(C).调用对象方法时
(D).使用对象的变量时
JDBC 中,用于表示数据库连接的对象是:
(A).Statement
(B).Connection
(C).DriverManager
(D).PreparedStatement 8. 9.
10. 需要读一个比较大的文本文件,这个文件里有很多字节数据,那么下列最合适读这
类文件的选项是哪一个?
(A).new FileInputStream("myfile.txt");
(B).new InputStreamReader(newFileInputStream("myfile.txt"));
(C).new BufferedReader(newInputStreamReader(newFileInputStream("myfile.txt")));
(D).RandomAccessFile raf =new RandomAccessFile("myfile.txt","+rw");
11. 在List ,Map ,Set 等接口中,不能包含重复元素的接口是哪一个?
(A).List
(B).Map
(C).Set
(D).都不是
12. 有如下程序:
1.class Test4{
2. public static void main (String[]
3.
4.
5.
6.boolean x=;boolean y=false;short z=42;args) {
7.
8.
9.
10.
11.
12. if((z++==42)&&(y=true))z++;if((x=false)||(++z==45))z++;System. out.println(“z=”+z);}}
结果为:
(A).44
(B).45
(C).46
(D).编译出错
13. 有如下程序
11. public class Test {
12. public static void main(String[]args) {
13. int x =5;
14. boolean b1=true;
15. boolean b2=false;
16.
17. if((x==4)&&!b2)
18. System.out.print("l");
19. System.out.print("2");
20. if ((b2=true) &&b1)
21. System.out.print("3");
22. }
23. }
运行的结果为:
(A).2
(B).3
(C).12
(D).23
(E).123
(F).编译错误
(G).抛出一个运行时异常
14. 以下语句有语法错的是:
(A).int x=1;y=2;z=3
(B).for (intx=10,y=0;x>0;x++);
(C).while (x>5);
(D).for(;;);
15. 下面有关类Demo 的描述正确的有()
public class Demo extends Base{
private int count;
public Demo(){
System.out.println(“A Demo object has been created ”);
}
protected void assone(){
count++;
}
}
(A).
(B).
(C).
(D).当创建一个Demo 类的实例对象时,count 的值为0当创建一个Demo 类的实例对象时,count 的值是不确定的Base 类型的对象中可以包含改变count 值的方法Demo 的子类对象可以访问count
二、
1.
2.
3.
4.
5. 问答题(每题5分,共计25分)String 是最基本的数据类型吗? String 和StringBuffer 的区别?Java 中的“==”和equals()方法有什么区别?描述一下JSP 中转发和重定向的区别?请说出作用域public ,private ,protected ,以及不写时的区别?List, Set, Map 是否继承自Collection 接口? 分别说出它们的特点?
三、编程题(每题15分,共计45分)
1.已知有一个数列:f(0)=1,f(1)=4,f(n+2)=2*f(n+1)+f(n),其中n 是大于0的整数,求f(10)的值。
2.写一个算法对1,8,5,2,4,9,7进行顺序排列。
3.使用输入输出流的API 实现文件拷贝功能。
Java 开发工程师笔试题
一、单项选择题(每题2分,共计30分)
1. 下列哪一种叙述是正确的
(A).abstract 修饰符可修饰字段、方法和类
(B).抽象方法的body 部分必须用一对大括号{}包住
(C).声明抽象方法,大括号可有可无
(D).声明抽象方法不可写出大括号
如下代码
public class Test {
public int aMethod(){
static int i =0;
i++;
return i;
}
public static void main (Stringargs[]){
Test test =new Test();
test.aMethod();
int j =test.aMethod();
System.out.println(j);
}
}
输出结果是什么?
(A).0
(B).1
(C).2
(D).编译失败
3. 以下代码的输出结果是()?
public class Test1{
public static void main(String[]args){
int i =42;
String s =(i50) ? "universe" :"everything";
System.out.println(s);
}
}
(A).life
(B).universe
(C).everything
(D).以上答案都不对。2.
4. 当你编译和运行下面的代码时,会出现下面选项中的哪种情况?
public class Test{
static boolean paddy;
public static void main(String[]args){
System.out.println(paddy);
}
}
(A).
(B).
(C).
(D).编译时出错编译通过并输出结果false 编译通过并输出结果true 编译通过并输出结果null
5. 如下代码:
class Base {
public 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).运行时抛出异常
6. 如下代码:
public class Foo {
public static void main(String[]args) {
try {
return;
}finally {
System.out.println("Finally" );
}
}
}
输出结果是什么?
(A).Finally
(B).编译失败
(C).代码正常运行但没有任何输出.
(D).运行时抛出异常
7. 下列关于构造方法的叙述中,错误的是()
(A).Java 语言规定构造方法名与类名必须相同
(B).Java 语言规定构造方法没有返回值,但不用vold 声明
(C).Java 语言规定构造方法不可以重载
(D).Java 语言规定构造方法只能通过new 自动调用
构造函数何时被调用()
(A).类定义时
(B).创建对象时
(C).调用对象方法时
(D).使用对象的变量时
JDBC 中,用于表示数据库连接的对象是:
(A).Statement
(B).Connection
(C).DriverManager
(D).PreparedStatement 8. 9.
10. 需要读一个比较大的文本文件,这个文件里有很多字节数据,那么下列最合适读这
类文件的选项是哪一个?
(A).new FileInputStream("myfile.txt");
(B).new InputStreamReader(newFileInputStream("myfile.txt"));
(C).new BufferedReader(newInputStreamReader(newFileInputStream("myfile.txt")));
(D).RandomAccessFile raf =new RandomAccessFile("myfile.txt","+rw");
11. 在List ,Map ,Set 等接口中,不能包含重复元素的接口是哪一个?
(A).List
(B).Map
(C).Set
(D).都不是
12. 有如下程序:
1.class Test4{
2. public static void main (String[]
3.
4.
5.
6.boolean x=;boolean y=false;short z=42;args) {
7.
8.
9.
10.
11.
12. if((z++==42)&&(y=true))z++;if((x=false)||(++z==45))z++;System. out.println(“z=”+z);}}
结果为:
(A).44
(B).45
(C).46
(D).编译出错
13. 有如下程序
11. public class Test {
12. public static void main(String[]args) {
13. int x =5;
14. boolean b1=true;
15. boolean b2=false;
16.
17. if((x==4)&&!b2)
18. System.out.print("l");
19. System.out.print("2");
20. if ((b2=true) &&b1)
21. System.out.print("3");
22. }
23. }
运行的结果为:
(A).2
(B).3
(C).12
(D).23
(E).123
(F).编译错误
(G).抛出一个运行时异常
14. 以下语句有语法错的是:
(A).int x=1;y=2;z=3
(B).for (intx=10,y=0;x>0;x++);
(C).while (x>5);
(D).for(;;);
15. 下面有关类Demo 的描述正确的有()
public class Demo extends Base{
private int count;
public Demo(){
System.out.println(“A Demo object has been created ”);
}
protected void assone(){
count++;
}
}
(A).
(B).
(C).
(D).当创建一个Demo 类的实例对象时,count 的值为0当创建一个Demo 类的实例对象时,count 的值是不确定的Base 类型的对象中可以包含改变count 值的方法Demo 的子类对象可以访问count
二、
1.
2.
3.
4.
5. 问答题(每题5分,共计25分)String 是最基本的数据类型吗? String 和StringBuffer 的区别?Java 中的“==”和equals()方法有什么区别?描述一下JSP 中转发和重定向的区别?请说出作用域public ,private ,protected ,以及不写时的区别?List, Set, Map 是否继承自Collection 接口? 分别说出它们的特点?
三、编程题(每题15分,共计45分)
1.已知有一个数列:f(0)=1,f(1)=4,f(n+2)=2*f(n+1)+f(n),其中n 是大于0的整数,求f(10)的值。
2.写一个算法对1,8,5,2,4,9,7进行顺序排列。
3.使用输入输出流的API 实现文件拷贝功能。