整理的卷子的形式供大家学习和交流,我们则用来内部的java测试
:
2017云计算云飞扬工作室JAVA测试
姓名: 学号: 出题人:王子玉 刘洋
一 选择题(每个2分,注:部分题多选)
1. 0.6332的数据类型是( )
A float B double C Float D Double
2. 下面哪个不是Thread类的方法( )
A start() B run() C exit() D getPriority()
3. Java接口的修饰符可以为( )
A private B protected C final D abstract
4. 下面哪个流类属于面向字符的输入流( )
A BufferedWriter B FileInputStream C ObjectInputStream D InputStreamReader
5. ArrayList list = new ArrayList(20);中的list扩充几次( )
A 0 B 1 C 2 D 3
6. 下面的方法,当输入为2的时候返回值是多少?( )
public static int getValue(int i) {
int result = 0;
switch (i) {
case 1:
result = result + i;
case 2:
result = result + i * 2;
case 3:
result = result + i * 3;
}
return result;
}
A0 B2 C4 D10
7 若需要定义一个类,下列哪些修饰符是允许被使用的?( )
A、static B、package C、private 、D public
9 .Class clazz = Class.forName(“test.Demo4”);
for (Method method : clazz.getDeclaredMethods()) {
System.out.println(method.toString());
}
其中“clazz.getDeclaredMethods”的作用是: ( )
A、取得类的公有方法对象
B、取得类的所有公有方法名称
C、取得类的所有方法对象
D、以上选项都不正确
10. 指出下列程序运行的结果 ( )
public class Example {
String str = new String("good");
char[] ch = { 'a', 'b', 'c' };
public static void main(String args[]) {
Example ex = new Example();
ex.change(ex.str, ex.ch);
System.out.print(ex.str + " and ");
System.out.print(ex.ch);
}
public void change(String str, char ch[]) {
str = "test ok";
ch[0] = 'g';
}
}
A、 good and abc B、 good and gbc C、 test ok and abc D、 test ok and gbc
11. 下列说法正确的有( )
A. class中的constructor不可省略
B. constructor必须与class同名,但方法不能与class同名
C. constructor在一个对象被new时执行
D.一个class只能定义一个constructor
12. 下面程序的运行结果:( )
public static void main(String args[]) {
Thread t = new Thread() {
public void run() {
pong();
}
};
t.run();
System.out.print("ping");
}
static void pong() {
System.out.print("pong");
}
A pingpong B pongping C pingpong和pongping都有可能 D 都不输出
13. 下列说法正确的是( )
A LinkedList继承自List
B AbstractSet继承自Set
C HashSet继承自AbstractSet
D WeakMap继承自HashMap
14. 下面哪些是对称加密算法( )
A 、DES B AES C DSA D RSA
下面代码的运行结果为:( )
import java.io.*;
import java.util.*;
public class foo{
public static void main (String[] args){
String s;
System.out.println(“s=” + s);
}
}
A 代码得到编译,并输出“s=”
B 代码得到编译,并输出“s=null”
C 由于String s没有初始化,代码不能编译通过
D 代码得到编译,但捕获到 NullPointException异常
17.下面程序输出的结果是( )
public class Demo {
static {
int num = 5;
}
static int num = 8;
public static void main(String args[]){
int num = 10;
System.out.println(test(num));
}
public static int test(int b){
try
{
b += 10;
return b;
} catch(RuntimeException e1) {
} catch(Exception e2) {
} finally {
b += 10;
return b;
}
}
}
A:10 B:20 C:30 D:40
18.下面是People和Child类的定义和构造方法,每个构造方法都输出编号。在执行new Child(“mike”)的时候都有哪些构造方法被顺序调用?请选择输出结果 ( )
class People {
String name;
public People() {
System.out.print(1);
}
public People(String name) {
System.out.print(2);
this.name = name;
}
}
class Child extends People {
People father;
public Child(String name) {
System.out.print(3);
this.name = name;
father = new People(name + “:F”);
}
public Child() {
System.out.print(4);
}
}
A312 B 32 C 432 D 132
19.下列哪项不是int类型的字面量?( )
A \u03A6 B 077 C OxABBC D 20
20.下列哪项不是有效的标识符?( )
A userName B 2test C $change D _password
二 填空题(每空一分)
1. System.out.println(1+2+3+”world ”+1+2+3);的输出结果应该是( )
2. System.out.println(10%3);的输出结果应该是( )
System.out.println(10%-3);的输出结果应该是( )
System.out.println(-10%3);的输出结果应该是( )
System.out.println(-10%-3);的输出结果应该是( )
3. 下面程序的运行结果是( )
String str1 = “hello”;
String str2 = “he” + new String(“llo”);
System.out.println(str1 == str2);
4. GC线程是否为守护线程?___
5. StringBuilder的默认初始化长度为____
6. Arraylist 的默认初始化长度为___
7. java源文件编译之后的格式是___.
8. java中所有异常的父类是__.所有错误和异常的父类是_.
9. java线程中普通优先级的线程,其优先级默认值为_.
10. Java完全支持面向对象的三种基本特征:__
三 简答题
1. 存在使i + 1 < i的数吗,如果存在说明情况,如果不存在说明理由.(4分)
2、阐述final、finally、finalize的用途和区别。 (6分)
3、Java支持的数据类型有哪些?每种数据类型的字节长度是多少?什么是自动拆装箱?(6分)
4. 下面程序能正常运行吗? 能的话输出什么?不能的话原因是什么? (6分)
public class NULL {
public static void haha(){
System.out.println("haha");
}
public static void main(String[] args) {
((NULL)null).haha();
}
}
5 、哪些情况下可以终止一个正在运行的线程的方式?(6分)
6. 下面程序的运行结果是什么? (6分)
class HelloA {
public HelloA() {
System.out.println(“HelloA”);
}
{ System.out.println(“I’m A class”); }
static { System.out.println("static A"); }
}
public class HelloB extends HelloA {
public HelloB() {
System.out.println(“HelloB”);
}
{ System.out.println(“I’m B class”); }
static { System.out.println(“static B”); }
public static void main(String[] args) {
new HelloB();
}
}
16. 重写和重载的区别?(6分)